FailedChanges

Summary

  1. [InstCombine] Add extra tests for overflow_to_sat.ll. NFC (details)
  2. [InstCombine] Canonicalize sadd.with.overflow with clamp to sadd.sat (details)
  3. [InstCombine] Canonicalize ssub.with.overflow with clamp to ssub.sat (details)
  4. [SimplifyCFG] add tests for possible FP speculative select; NFC (details)
  5. [SimplifyCFG] add fast-math-flags to tests for better coverage; NFC (details)
  6. [SimplifyCFG] propagate fast-math-flags (FMF) from phi to select (details)
  7. [Attributor] Use nofree argument attribute for heap-to-stack conversion (details)
  8. [ConstantFold] Add some tests for binops with constants and undefs. (details)
  9. [ConstantFold] Handle identity folds at top of ConstantFoldBinaryInst (details)
  10. [LegalizeTypes] Merge ExpandIntRes_LLROUND and ExpandIntRes_LLRINT into (details)
  11. [LegalizeTypes] Remove PromoteFloat support form (details)
  12. [LegalizeTypes] When expanding the integer result of LLROUND/LLRINT, (details)
  13. [InstCombine] prevent crashing/assert on shift constant expression (details)
  14. Make it possible to redirect not only errs() but also outs() (details)
  15. llvm/ObjCARC: Use continue to reduce some nesting, NFC (details)
  16. [docs] Fix broken links in Kaleidoscope chapter 3 (details)
  17. [PowerPC] extend PPCPreIncPrep Pass for ds/dq form (details)
  18. [LegalizeTypes][X86] Add support for expanding the result type of (details)
  19. llvm/ObjCARC: Split OptimizeIndividualCallImpl out of (details)
  20. Rename __is_foo_iterator traits to reflect their Cpp17 nature. (details)
  21. Fix Windows buildbots (details)
  22. [LegalizeTypes] Remove unnecessary conversion from EVT to MVT to (details)
  23. [LegalizeTypes] Remove SoftenFloat handling from (details)
  24. [Sparc] Fix "Cannot select" error for AtomicFence on 32-bit V9 (details)
  25. DWARF location lists: Add section index dumping (details)
  26. [ARM] Allocatable Global Register Variables for ARM (details)
  27. [AST] Attach comment in `/** doc */ typedef struct A {} B` to B as well (details)
  28. [lldb] [test] Enable lldb-server tests on NetBSD, and set XFAILs (details)
  29. [lldb] [Process/NetBSD] Implement thread name getting (details)
  30. [ARM,MVE] Add intrinsics for vector comparisons. (details)
  31. [ARM,MVE] Add InstCombine rules for pred_i2v / pred_v2i. (details)
  32. [NFC][Test] Add the vavg test for PowerPC (details)
  33. [RISCV] Set triple based on -march flag (details)
  34. [RISCV] Add assembly mnemonic spell checking (details)
  35. Fix signed/unsigned comparison warning. NFCI. (details)
  36. [X86][SSE] Add test for extractelement with multiple uses (details)
  37. Fix "not all control paths return a value" warning. NFCI. (details)
  38. [clangd] Expose the xref's incomplete flag to clangdServer API. (details)
  39. [SVE][CodeGen] Scalable vector MVT size queries (details)
  40. [PowerPC] [NFC] add IR testcases for folding rlwinma. (details)
  41. Fix a print error found while testing llvm-objcopy (details)
  42. [lldb][NFC] Cleanup comments in ClangASTSource.h (details)
  43. Fix uninitialized variable warning. NFC. (details)
  44. llvm-rc - fix uninitialized variable warnings. NFC. (details)
  45. Fix uninitialized variable warning. NFC. (details)
  46. DwarfGenerator - fix uninitialized variable warnings. NFC. (details)
  47. Revert rGc0f6ad7d1f3c : "DWARF location lists: Add section index (details)
  48. [OpenMP] Add implementation and tests of Archer tool (details)
  49. Avoid duplicate exe_path definition on recent FreeBSD (details)
  50. llvm-objcopy  - fix uninitialized variable warnings. NFC. (details)
  51. Fix cppcheck shadow variable warning. NFC. (details)
  52. [clangd] Fix diagnostic warnings in the RenameTests, NFC. (details)
  53. Remove useless param tag to fix Wdocumentation warning. NFCI. (details)
  54. [lldb] Fix JSON parser to allow empty arrays (details)
  55. [clangd] Fix some clang-tidy warnings on SourceCodeTests.cpp, NFC. (details)
  56. [AMDGPU][MC][GFX10] Enabled v_movrel*[sdwa|dpp|dpp8] opcodes (details)
  57. Re-commit "DWARF location lists: Add section index dumping" (details)
  58. arm64_32: support function return in FastISel. (details)
  59. Revert "[DWARF5]Addition of alignment atrribute in typedef DIE." (details)
  60. [NFC] Fix test reserve_global_reg.ll after 2d739f9 (details)
  61. [clangd] Implement rename by using SelectionTree and (details)
  62. [NFC] Clean up debug-names-verify-completeness.s test (details)
  63. [clangd] Store xref for Macros in ParsedAST. (details)
  64. gn build: Merge 2054ed052f1 (details)
  65. [ASan] Mark test as UNSUPPORTED for iOS simulator (details)
  66. [OPENMP50]Fix PR44024: runtime assert in distribute construct. (details)
  67. [dwarfgen] Fix initialization order error. [NFCI] (details)
  68. [Attr] Fix `-ast-print` for `asm` attribute (details)
  69. [yaml2obj][test] Move tests to binary format specific subdirectories (details)
  70. [Docs] Add Python caveats under the development section (details)
  71. Bump sanitizer macOS deployment target to 10.10 (details)
  72. Bump sanitizer iOS deployment target to 9.0 (details)
  73. [cmake] Factor out DEFAULT_SANITIZER_MIN_OSX_VERSION (details)
  74. Replace bitfield in lldb::Type with byte-sized members. (NFC) (details)
  75. Fix shared lib build. (details)
  76. [libomptarget][nfc] Move some source into common from nvptx (details)
  77. [Signal] Allow llvm clients to opt into one-shot SIGPIPE handling (details)
  78. [builtins] Implement rounding mode support for i386/x86_64 (details)
  79. [Remarks][Driver] Use different remark files when targeting multiple (details)
  80. Allocate builtins table earlier to fix bug found by ubsan (details)
  81. Temporarily Revert "Add support for options -frounding-math, (details)
  82. Revert "[Remarks][Driver] Use different remark files when targeting (details)
  83. [PowerPC] Test case for vector float gather on ppc64le and ppc64 (details)
  84. Reland: [Remarks][Driver] Use different remark files when targeting (details)
  85. [LoopPred/WC] Use a dominating widenable condition to remove analyze (details)
  86. [LegalizeDAG] Convert strict fp nodes to libcalls without losing the (details)
  87. Implement __attribute__((objc_direct)), (details)
  88. [X86] Add AMD Matisse (znver2) model number to getHostCPUName and (details)
  89. [ThinLTO] Promotion handling cleanup (NFC) (details)
  90. Update the docs for building libc++. (details)
  91. [Sema] Fix a -Wobjc-signed-char-bool false-positive (details)
  92. [X86] Add a 'break;' to the end of the last case in a switch to avoid (details)
  93. Fix _LIBCPP_HAS_ definitions for Android. (details)
  94. implement printing out raw section data of xcoff objectfile for (details)
  95. Populate CUDA flags on FreeBSD too, as many other toolchains do. (details)
  96. [ThinLTO] Avoid extra index lookup during promotion (details)
  97. [profile] Support online merging with continuous sync mode (details)
  98. [macho] Allow CPUSubtype to be adjusted before writing it to a file (details)
  99. [macho] Allow CPUSubtype to contribute to architecture identification (details)
  100. Fix iOSDarwin()'s doc comment. (details)
  101. [libc++] Separate -include and path to the site config file (details)
  102. [lldb] [unittest] Reenable MainLoopTest.DetectsEOF on NetBSD (details)
  103. [lldb] [unittest] Skip TestStopReplyContainsThreadPcs on NetBSD (details)
  104. [lldb] [test] Mark segv-related tests XFAIL on NetBSD (details)
  105. [lldb] [test] XFAIL more lldb-server tests on NetBSD (details)
  106. [NFC] Fix 'target' condition in checkTargetFeatures (details)
  107. [PowerPC] Improve float vector gather codegen (details)
  108. [SLP] reduce duplicated check lines in tests; NFC (details)
  109. Adding a test case for read-only data assembly writing for aix (details)
  110. Temporarily revert "[SLP] fix miscompile on min/max reductions with (details)
  111. ThinLTO: Fix assembler to emit alwaysInline in the summary (details)
  112. [llvm-cxxfilt] Improve strip-underscore behavior (details)
  113. [CodeGen] Assign locations to calls to special struct helpers (details)
  114. gn build: (manually) try to merge 1689ad27af (details)
  115. gn build: Merge 30e7ee3c4ba (details)
  116. Revert "[clangd] Implement rename by using SelectionTree and (details)
  117. [OpenMP] Remove -Wl,-fini=__kmp_internal_end_fini (details)
  118. [Docs] Add reproducer documentation (details)
  119. Fix error message missed in commit (details)
  120. [CMake] Re-enable -Wno-gnu-anonymous-struct & -Wno-nested-anon-types. (details)
  121. Revert "[CMake] Re-enable -Wno-gnu-anonymous-struct & (details)
  122. [Bindings][Go] Fix go.test failure due to missing argument go.test (details)
  123. Revert "[Bindings][Go] Fix go.test failure due to missing argument" (details)
  124. Fix component build (details)
  125. Revert "Fix shared lib build." (details)
  126. Revert "implement printing out raw section data of xcoff objectfile for (details)
  127. [SelectionDAG] Merge the two identical ExpandChainLibCall methods from (details)
  128. bugpoint: Add option to disable attribute removal (details)
  129. AMDGPU: Split test functions to avoid dependency on subtarget (details)
  130. [clang][IFS] Driver pipeline: generate interface stubs after standard (details)
  131. Revert "[clang][IFS] Driver pipeline: generate interface stubs after (details)
  132. [lldb-server] Use LLDB_LOG_ERROR to consume Error<> even if logging is (details)
  133. [X86] Add more addcarry tests (details)
  134. [ARM][MVE] Tail predication conversion (details)
  135. Revert 1689ad27af5 "[builtins] Implement rounding mode support for (details)
  136. [NFC] Test commit. Please ignore. (details)
  137. [clang-format] [NFC] add recent changes to release notes (details)
  138. [ARM][MVE] Enable narrow vectors for tail pred (details)
  139. [APInt] add wrap support for `setBits` and `getBitsSet` (details)
  140. Reland "[clangd] Implement rename by using SelectionTree and (details)
  141. Add operator<< for object::SectionedAddress (details)
  142. Add streaming/equality operators to (details)
  143. Revert "gn build: (manually) try to merge 1689ad27af" (details)
  144. [clangd] Fix ps4 buildbot failure. (details)
  145. [clangd] More sensible output for constructors/destructors in hover. (details)
  146. Mark PR44037 tests as XFAIL on AArch64 Linux dwo (details)
  147. [clangd] Fix hover 'local scope' to include class template params (details)
  148. [kate] Add various missing keywords (details)
  149. gn build: Merge 39285a0f02c (details)
  150. gn build: Merge c0fc29c4684 (details)
  151. [libunwind] Adjust the signal_frame test for Arm (details)
  152. [ThinLTO] Make ValueInfo::operator bool() explicit (details)
  153. [RISCV] Support mutilib in baremetal environment (details)
  154. [DependenceAnalysis] Dependecies for loads marked with "ivnariant.load" (details)
  155. [clang-tidy] Added DefaultOperatorNewCheck. (details)
  156. gn build: Merge e8a4c74f115 (details)
  157. [mips] Joint MipsMemSimmXXXAsmOperand into the single template class. (details)
  158. Fix PR44001: assert failure in getFunctionLocalOffsetAfterInsn (details)
  159. [lldb] Remove ClangExpressionDeclMap::ResolveUnknownTypes (details)
  160. [X86][SSE] Remove XFormVExtractWithShuffleIntoLoad to prevent (details)
  161. [llvm-objdump] Print relocation addends in hexadecimal (details)
  162. Revert "[clang-tidy] Fix readability-redundant-string-init for (details)
  163. Revert "[clang-tidy] modernize-use-override new option (details)
  164. [clang-tidy] Fix readability-redundant-string-init for c++17/c++2a (details)
  165. [clang-tidy] modernize-use-override new option AllowOverrideAndFinal (details)
  166. [lldb] Also test Get[De]mangledName of SBType in (details)
  167. [ThinLTO] Simplify code. NFC (details)
  168. Revert "[RISCV] Support mutilib in baremetal environment" (details)
  169. [PowerPC] Regenerate vsx_insert_extract_le.ll tests (details)
  170. [ARM] Regenerate vector lane store tests (details)
  171. [NFC][X86] Fixup comment in CodeGen/X86/cmov.ll (details)
  172. [AMDGPU] Tune inlining parameters for AMDGPU target (part 2) (details)
  173. Fix modules build by adding missing includes (details)
  174. DAG: Add function context to isFMAFasterThanFMulAndFAdd (details)
  175. [lldb][NFC] Early exit in IRExecutionUnit::GetStaticInitializers (details)
  176. [clangd] Untangle Hover from XRefs, move into own file. (details)
  177. [clang-tidy] DefaultOperatorNewCheck test fixes. (details)
  178. AMDGPU: Be explicit about denormal mode in MIR tests (details)
  179. AMDGPU: Refactor treatment of denormal mode (details)
  180. [clangd] Show values of more expressions on hover (details)
  181. [ARM,MVE] Add intrinsics for scalar shifts. (details)
  182. [lldb] Add logging to IRExecutionUnit::GetStaticInitializers (details)
  183. [SLP] add test for reduction miscompile; NFC (details)
  184. Fixup AVR tests to reflect changes in addend format in llvm-objdump (details)
  185. gn build: Merge 765b1250f68 (details)
  186. [SLP] fix insertion point for min/max reduction (details)
  187. [clang-tidy] Give readability-redundant-member-init an option (details)
  188. [AIX][XCOFF] Write Function descriptors and TOC base to data section (details)
  189. [NFC] Attempting to fix sphinx build failure with badly encoded (details)
  190. [clang][NFC] Make various uses of Regex const (details)
  191. [cmake] Disable GCC 9's -Winit-list-lifetime warning in ArrayRef (details)
  192. Work on cleaning up denormal mode handling (details)
  193. gn build: Merge 7fe9435dc88 (details)
  194. [NFC] Attempting to fix sphinx build failure with badly encoded (details)
  195. Fix openmp on PowerPC64-BE-ELFv2 ABI on FreeBSD. (details)
  196. [ELF] Improve --gc-sections compatibility with GNU ld regarding section (details)
  197. [FileCheck] Use lit's internal shell for the test suite (details)
  198. [libTooling] Extend `buildASTFromCodeWithArgs` to take files argument. (details)
  199. [NFC] Refactor representation of materialized temporaries (details)
  200. [nfc][libomptarget] Write amdgcn macros in terms of compiler intrinsics (details)
  201. [OPENMP]Rename function, NFC. (details)
  202. [ELF] Disallow out-of-range section group indices after D70146 (details)
  203. clang: Add -fconvergent-functions flag (details)
  204. [Symbolizers] On Darwin compute function offset when possible. (details)
  205. [LLDB] Fix formatting in the driver (NFC) (details)
  206. [C-index] Fix test when using Debug target & MSVC STL (details)
  207. implement printing out raw section data of xcoff objectfile for (details)
  208. [ARM] Add and update a lot of VLDn tests. NFC (details)
  209. [ARM] MVE interleaving load and stores. (details)
  210. Add a "Using LLDB" section to the welcome page of the website (details)
  211. [ADT][Expensive checks] Create a std::random_device seed only once when (details)
  212. test-release.sh: Update to fetch source from GitHub (details)
  213. MTE: add more unchecked instructions. (details)
  214. [nfc][libomptarget] Remove casts of string literals to char* (details)
  215. [SLP] fix miscompile on min/max reductions with extra uses (PR43948) (details)
  216. llvm/ObjCARC: Eliminate inlined AutoreleaseRV calls (details)
  217. [DebugInfo] Describe size of spilled values in call site params (details)
  218. fixe leak found by asan build bot (details)
  219. The patch is the compiler error specific on the compile error on CMVC (details)
  220. [profile] Unbreak Fuchsia/Windows after D68351 (details)
  221. Add a key method to Sema to optimize debug info size (details)
  222. [docs] Remove dangling parenthesis from documentation (details)
  223. [CGDebugInfo] Emit subprograms for decls when AT_tail_call is understood (details)
  224. [profile] Address unused function warnings on Windows after D69586 (details)
  225. [OPENMP50]Add if clause in simd directive. (details)
  226. Precommit test showing oppurtunity when computing exit tests of (details)
  227. Wrap C APIs with pragmas enforcing -Werror=strict-prototypes (details)
  228. [ValueTracking] Add a basic version of isKnownNonInfinity and use it to (details)
  229. [AArch64] Fix MIR test instruction to not have invalid operand. (details)
  230. [LoopPred] Generalize profitability check to handle unswitch output (details)
  231. [NFC] Factor out utilities for manipulating widenable branches (details)
  232. [clang][IFS] Driver Pipeline: generate stubs after standard pipeline (2) (details)
  233. [clang][IFS] Fixing failing bots that do not have PPC target or (details)
  234. [GuardWidening] Remove WidenFrequentBranches transform (details)
  235. Introduce llvm-install-name-tool (details)
  236. [lldb][test] Prevent \n in calls to lldb's expect() test helper. (details)
  237. [clang][IFS] Attempting to fix missing 'orbis-ld' on scei-ps4-ubuntu (details)
  238. [ARC] Add InitializePasses header to fix ARC build. (details)
  239. [tests] Autogen a test to eliminate spurious diff from following patch (details)
  240. [X86] Add custom type legalization and lowering for scalar (details)
  241. clang/Modules: Sink ASTReadResult in ReadControlBlock, NFC (details)
  242. scudo: Switch from std::random_shuffle to std::shuffle in a test. (details)
  243. [LegalizeDAG][X86] Enable STRICT_FP_TO_SINT/UINT to be promoted (details)
  244. [Reproducer] Namespace the reproducer dump options. (details)
  245. Revert "Introduce llvm-install-name-tool" (details)
  246. [clang][IFS] Fixing unsupported emulation mode on clang-ppc64be-linux (details)
  247. [LTO][Legacy] Add API for passing LLVM options separately (details)
  248. [musttail] Don't forward AL on Win64 (details)
  249. clang/Modules: Early return in CompilerInstance::createModuleManager, (details)
  250. [clang][IFS][test] Removing driver-test.c. Test is still too brittle. (details)
  251. Revert "[clang][IFS][test] Removing driver-test.c. Test is still too (details)
  252. Revert "[clang][IFS] Fixing unsupported emulation mode on (details)
  253. Revert "[clang][IFS] Attempting to fix missing 'orbis-ld' on (details)
  254. Revert "[clang][IFS] Fixing failing bots that do not have PPC target or (details)
  255. Revert "[clang][IFS] Driver Pipeline: generate stubs after standard (details)
  256. Extends the tblgen macro to allow mlir-tblgen to be installed (details)
  257. Use lld::make<T> to make TpiSource objects (details)
  258. AMDGPU/GlobalISel: Legalize FDIV64 (details)
  259. [FEnv] File with properties of constrained intrinsics (details)
  260. [FEnv] Fix AddingConstrainedIntrinsics.rst after (details)
  261. Introduce llvm-install-name-tool (details)
  262. [llvm-readobj/llvm-readelf] - Improve dumping of versioning sections. (details)
  263. ExecutionEngine: add preliminary support for COFF ARM64 (details)
  264. Reland "[clang] Remove the DIFlagArgumentNotModified debug info flag" (details)
  265. [llvm-readobj] - Improve dumping of the SHT_LLVM_LINKER_OPTIONS (details)
  266. [ExecutionEngine] Add a missing break to avoid warnings (details)
  267. [AMDGPU] add support for hostcall buffer pointer as hidden kernel (details)
  268. [lldb][NFC] Remove ClangASTContext::GetUniqueNamespaceDeclaration (details)
  269. [lldb][NFC] Remove ClangASTContext::FieldIsBitfield overload (details)
  270. [lldb][NFC] Remove ClangASTContext::GetAsDeclContext (details)
  271. [lldb][NFC] Simplify ClangASTContext::GetBasicTypes (details)
  272. Move floating point related entities to namespace level (details)
  273. [clangd] Treat UserDefinedLiteral as a leaf in SelectionTree, (details)
  274. [lldb][NFC] Remove unused ClangASTContext::GetUnknownAnyType (details)
  275. gn build: Merge ea8678d1c78 (details)
  276. [DebugInfo] Remove the DIFlagArgumentNotModified debug info flag (details)
  277. [DWARF] Add an api to get "interpreted" location lists (details)
  278. [CodeGen][NFC] Regenerate load-combine test with update_llc_test. (details)
  279. gn build: Merge 089c0f58149 (details)
  280. [AMDGPU][DPP] Corrected DPP combiner (details)
  281. [mips] Make MipsAsmParser::isEvaluated static function. NFC (details)
  282. [mips] Put conditions when we need to expand memory operand into a (details)
  283. Update tests after change to llvm-cxxfilt's underscore stripping (details)
  284. [lldb][NFC] Move ClangExpressionDeclMap's persistent decl search into (details)
  285. ARM-NEON: separate soon-to-be conflicting f16 patterns. NFC. (details)
  286. NeonEmitter: remove special case on casting polymorphic builtins. (details)
  287. ARM-NEON: make type modifiers orthogonal and allow multiple modifiers. (details)
  288. Ignore R_MIPS_JALR relocations against non-function symbols (details)
  289. [UptestTestChecks][NFC] Share some common command line options code (details)
  290. [update_cc_test_checks.py] Add the --function-signature flag (details)
  291. Big-endian fix to DWARFDieTest (089c0f58) (details)
  292. [ARM][MVE] Select vqabs (details)
  293. [lldb][NFC] Move searching for $__lldb_class into its own function in (details)
  294. Revert "[DWARF] Add an api to get "interpreted" location lists" (details)
  295. gn build: Merge 72d2929c52a (details)
  296. [SelectionDAG] Combine U{ADD,SUB}O diamonds into {ADD,SUB}CARRY (details)
  297. [mips] Define mem_simm# operands using tblgen `foreach` loop. NFC (details)
  298. [AMDGPU][GFX10] Disabled v_movrel*[sdwa|dpp] opcodes in codegen (details)
  299. [lldb][NFC] Move searching for $__lldb_objc_class into its own function (details)
  300. [SLP] reduce duplicate CHECK lines in tests; NFC (details)
  301. Recommit "[DWARF] Add an api to get "interpreted" location lists" (details)
  302. [AIX] Lowering jump table, constant pool and block address in asm (details)
  303. gn build: Merge a03435ec8e2 (details)
  304. [clangd] Fix a crash in expected types (details)
  305. [AIX][XCOFF] Add support for generating assembly code for one-byte (details)
  306. A fix of the bug introduced by previous lowering in asm patch. (details)
  307. Rename 'DenormalMode' in CommandFlags.inc to 'DenormalFPMath', as its (details)
  308. [SystemZ] Use fneg in test cases (details)
  309. [SelectionDAG][X86] Mutate strictFP nodes to non-strict in (details)
  310. [SystemZ] Avoid mixing strict and non-strict FP operations in tests (details)
  311. [FileCollector] Ignore empty paths. (details)
  312. scudo: Only use the Android reserved TLS slot when building libc's copy (details)
  313. Revert "[clangd] Fix a crash in expected types" (details)
  314. Fix parser bug that permitted 'private' as a (no-op) decl-specifier even (details)
  315. [AMDGPU] Keep consistent check of legal addressing mode. (details)
  316. [debugserver] Set arch based on TARGET_TRIPLE (details)
  317. [lldb] [test] Un-XFAIL one lldb-server test on NetBSD (details)
  318. [lldb] Fix NSURL data formatter truncation issue (details)
  319. [AMDGPU] Fixed mfma test check. NFC. (details)
  320. [CMake] Fix the path to CrossWinToARMLinux.cmake CMake cache. (details)
  321. Move widenable branch formation into makeGuardControlFlowExplicit helper (details)
  322. [X86] Mark vector STRICT_FP_ROUND as Legal instead of Custom. (details)
  323. [Hexagon] Fix two testcase errors (details)
  324. [Reproducer] Generate LLDB reproducer on crash (details)
  325. [clang][IFS] Driver Pipeline: generate stubs after standard pipeline (3) (details)
  326. [Docs] Fix Sphinx warning (treated as error) (details)
  327. [Driver] Fix missing space in lldb --help output. (details)
  328. [AMDGPU][SILoadStoreOptimizer] Merge TBUFFER loads/stores (details)
  329. Cherry-pick gtest fix for asan tests. (details)
  330. Handle the case where the 'g' packet doesn't get all regs. lldb would (details)
  331. [Reproducer] Limit signals to macro define sin <csignal> (details)
  332. [AArch64] Add the pipeline model for Exynos M5 (details)
  333. [Support][Error] Unfriend FileError. It is not special. (details)
  334. [clang-tidy] modernize-use-equals-default avoid adding redundant (details)
  335. Temporarily Revert "[SLP] allow forming 2-way reduction patterns" (details)
  336. [BPF] Fix a bug in peephole optimization (details)
  337. Temporarily Revert "Temporarily Revert "[SLP] allow forming 2-way (details)
  338. Temporarily Revert "[SLP] allow forming 2-way reduction patterns" and (details)
  339. Revert "[AArch64] Add the pipeline model for Exynos M5" as it's causing (details)
  340. gn build: check-clang depends on llvm-cxxfilt. (details)
  341. [Sema] Add a 'Semantic' parameter to Expr::isKnownToHaveBooleanValue (details)
  342. [ADT] Move to_vector from STLExtras.h to SmallVector.h (details)
  343. [MemorySSA] Update analysis when the terminator is a memory instruction. (details)
  344. [docs] Tiny rewording in the portability FAQ entry (details)
  345. Precommit tests for forthcoming widenable.condition transforms (details)
  346. Fix an offset underflow bug in DwarfExpression when describing small (details)
  347. [X86] Fix f128->i16 fptosi to promote the i16 to i32 before trying to (details)
  348. [X86] Fix i16->f128 sitofp to promote the i16 to i32 before trying to (details)
  349. [MemorySSA] Moving at the end often means before terminator. (details)
  350. [Orc][Modules] Fix Modules build fallout from a34680a33eb. (details)
  351. [Error] Remove a broken code fragment accidentally included in (details)
  352. Tablegen: Remove the error for duplicate include files. (details)
  353. Fix unused variable warning in NDEBUG mode after (details)
  354. [clang][IFS][test] GreenDragon and Fuchsia Darwin bot fix: BindArchClass (details)
  355. D'oh. Fix assert after a84922916e6eddf701b39fbd7fe0222cb0fee1d6. (Which (details)
  356. [DAGCombine][NFC] Use ArrayRef and correctly size SmallVectors. (details)
  357. [clangd] Reland b5135a86e0476: Fix a crash in expected types (details)
  358. [libcxx] Add Sergej Jaskiewicz to CREDITS.txt (details)
  359. [RISCV] Support mutilib in baremetal environment (details)
  360. [Support] Don't check XCR0 when detecting avx512 on Darwin. (details)
  361. [compiler-rt] Don't check XCR0 when detecting avx512 on Darwin. (details)
  362. [lldb][NFC] Early exit in (details)
  363. [DebugInfo] Refactor DIExpression [SZ]Ext creation into function [NFC] (details)
  364. [AMDGPU] Add attribute for target loop unroll threshold default (details)
  365. [Driver] Use VFS to check if sanitizer blacklists exist (details)
  366. [lldb][NFC] Move searching for the local variable namespace into own (details)
  367. [COFF] Widen PE32Header fields to fit 64 bit versions (details)
  368. Revert "[Driver] Use VFS to check if sanitizer blacklists exist" (details)
  369. Atomics: support min/max orthogonally (details)
  370. [OpenCL] Fix address space for base method call (PR43145) (details)
  371. Revert "[DependenceAnalysis] Dependecies for loads marked with (details)
  372. [mips] Remove addresses from the test case. NFC (details)
  373. [mips] Remove unused `IsPCRelativeLoad` MIPS instructions attribute. NFC (details)
  374. [mips] Rename test case. NFC (details)
  375. dwarfdump --statistics: Use new location list api (details)
  376. Reland 9f3fdb0d7fab: [Driver] Use VFS to check if sanitizer blacklists (details)
  377. [lldb][NFC] Move searching the ClangModulesDeclVendor into own function (details)
  378. [Driver] Fix a shadowing warning. NFC (details)
  379. [lldb][NFC] Move searching local variables into own function (details)
  380. [lldb][NFC] Remove test directory completely (details)
  381. Fix Wshadow warning against global None variable. NFC. (details)
  382. Statistic - Fix MSVC shadow warning against global PrintOnExit static (details)
  383. [DAGCombiner] Add tests for thumb load-combine. (details)
  384. Revert "[RISCV] Support mutilib in baremetal environment" (details)
  385. Make coding standards document more inclusive (details)
  386. [lldb][NFC] Reduce scope of some variables in (details)
  387. [Debuginfo][NFC] removes redundant semicolon. (details)
  388. [DeclCXX] Remove unknown external linkage specifications (details)
  389. [lldb][NFC] Move searching functions in ClangExpressionDeclMap to own (details)
  390. [lldb][NFC] Modernize string handling in (details)
  391. [LV] PreferPredicateOverEpilog respecting option (details)
  392. [DAGCombiner] Use the right thumbv7meb triple for ARM big-endian test. (details)
  393. [mips] Add a 'generic' Mips CPU (details)
  394. [OPENMP50]Add if clause in for simd directive. (details)
  395. [Hexagon] Remove incorrect intrinsic definition and invalid testcase (details)
  396. LLD: Don't use the stderrOS stream in link before it's reassigned. (details)
  397. Fix unused variable warning. NFCI. (details)
  398. [InstCombine] add assert in SimplifyDemandedVectorElts and improve (details)
  399. [OPENMP]Fix datasharing checks for if clause in parallel taskloop (details)
  400. Reduce the number of iterations in testcase. (NFC) (details)
  401. [NFC] Refactor and improve comments in CommandObjectTarget (details)
  402. Fix compilation warning. NFC. (details)
  403. [BranchFolding] Fix PR43964 about branch folder not being debug (details)
  404. [llvm-objcopy][MachO] Fix symbol order in the symbol table (details)
  405. [llvm-objcopy][MachO] Implement --strip-debug (details)
  406. [ELF] Error if -Ttext-segment is specified (details)
  407. [SCEV] Be robust against IR generated by simple-loop-unswitch (details)
  408. [Docs] Generate the LLDB man page with Sphinx (details)
  409. [scudo][standalone] Minor optimization & improvements (details)
  410. [SCEV] Add a mode to skip classification when printing analysis (details)
  411. [OPENMP50]Add device/kind context selector support. (details)
  412. [Tests] Autogenerate a bunch of SCEV trip count tests for readability. (details)
  413. Broaden the definition of a "widenable branch" (details)
  414. [cmake] Explicitly mark libraries defined in lib/ as "Component (details)
  415. Debug info: Emit objc_direct methods as members of their containing (details)
  416. [Test] Split up TestIntegerTypes.py (details)
  417. [PowerPC] Add new Future CPU for PowerPC (details)
  418. [X86] Add test case for f128 fma. NFC (details)
  419. [X86] Change legalization action for f128 fadd/fsub/fmul/fdiv from (details)
  420. [JumpThreading] Refactor ThreadEdge (details)
  421. [test] Mark TestEditline as skipped with ASan. (details)
  422. [Reproducer] Instruct users to replay reproducer (details)
  423. [Reproducer] Make 'reproducer xcrash' behave the same during capture & (details)
  424. [Driver] Fix newline at the end of help output (details)
  425. [OPENMP]Remove unused template parameter, NFC. (details)
  426. Clang-trunk Generates Wrong Debug values with -O1 (details)
  427. [PGO][PGSO] DAG.shouldOptForSize part. (details)
  428. [Object][RISCV] Fix R_RISCV_SET6 and R_RISCV_SUB6 relocations resolution (details)
  429. [FileCheck] Make FILECHECK_OPTS useful for its test suite (details)
  430. Further cleanup manipulation of widenable branches [NFC] (details)
  431. [TSan] Make `mach_vm_allocate.c` test less flaky (details)
  432. [libFuzzer] Fix fd check in DupAndCloseStderr. (details)
  433. [AArch64] [FrameLowering] Allow conditional insertion of CFI instruction (details)
  434. [Object][RISCV] Resolve R_RISCV_32_PCREL (details)
  435. Early-exitify ClangASTContext::AddObjCClassProperty() (NFC) (details)
  436. [LoopPred] Robustly handle partially unswitched loops (details)
  437. [libFuzzer] Fix unwinding for Fuchsia (details)
  438. [Clang] Enable RISC-V support for Fuchsia (details)
  439. [llvm-lipo] Add support for -extract (details)
  440. [X86] Remove regcall calling convention from fp-strict-scalar.ll. Add (details)
  441. [X86] Mark vector STRICT_FADD/STRICT_FSUB as Legal and add mutation to (details)
  442. [LegalizeDAG][X86] Add support for turning STRICT_FADD/SUB/MUL/DIV into (details)
  443. [clangd] Inactive regions support as an extension to semantic (details)
  444. [libFuzzer] don't use /dev/null for DiscardOuput in Fuchsia. (details)
  445. [LoopInstSimplify] Move MemorySSA verification under flag. (details)
  446. [FPEnv] Add an option to disable strict float node mutating to an normal (details)
  447. [CFG] Add a test for a flaky crash in CFGBlock::getLastCondition(). (details)
  448. [X86] Mark fp128 FMA as LibCall instead of Expand. Add STRICT_FMA as (details)
  449. [X86] Add test cases for most of the constrained fp libcalls with fp128. (details)
  450. [analyzer] NFC: Don't clean up range constraints twice. (details)
  451. [analyzer] Fix Objective-C accessor body farms after 2073dd2d. (details)
  452. clang/Modules: Move Serialization/Module.{h,cpp} to ModuleFile, NFC (details)
  453. [RISCV] Support mutilib in baremetal environment (details)
  454. [X86] Add option 'disable-strictnode-mutation' for tests that respect (details)
  455. [PowerPC] combine rlwinm+rlwinm to rlwinm combine x3 = rlwinm x3, 27, 5, (details)
  456. [CMake] Fix LLVM build non-determinism on RHEL (details)
  457. [CFG] Fix a flaky crash in CFGBlock::getLastCondition(). (details)
  458. [lldb] Don't enable expression log in TestEmptyStdModule.py (details)
  459. [DAGCombiner] Allow zextended load combines. (details)
  460. [clang-tidy] new performance-no-automatic-move check. (details)
  461. Revert "[DAGCombiner] Allow zextended load combines." (details)
  462. gn build: (manually) merge dep from f65cfff6 (details)
  463. gn build: Merge 95fe54931fd (details)
  464. gn build: Merge aa981c1802d (details)
  465. gn build: Merge f7170d17a84 (details)
  466. [PowerPC] Implement the vector extend sign instruction pattern match (details)
  467. [DWARFVerifier] Use the new location list api (details)
  468. Test commit. (details)
  469. [lldb] Fix exception breakpoint not being resolved when set on dummy (details)
  470. [clangd] Show lambda signature for lambda autocompletions (details)
  471. [X86] Updated strict fp scalar tests and add fp80 tests for D68857 (details)
  472. [lldb] [test] XFAIL TestExpressionEvaluation on NetBSD (details)
  473. [Codegen] TargetLowering::prepareUREMEqFold(): `x u% C1 ==/!= C2` with (details)
  474. [Codegen] TargetLowering::prepareUREMEqFold(): `x u% C1 ==/!= C2` (details)
  475. [WIP][Attributor] AAReachability Attribute (details)
  476. [OpenMP][Tool] Fix cmake variable in lit.site.cfg.in (details)
  477. [Test] Fix freeze ocaml test failure (details)
  478. Reland "[DAGCombiner] Allow zextended load combines." (details)
  479. [OpenMP][Tool] disable archer tests in standalone build (details)
  480. Add support to find out resource dir and add it as compilation args (details)
  481. [XCOFF][AIX] Read-only data section object file generation (details)
  482. [BPF] Fix a recursion bug in BPF Peephole ZEXT optimization (details)
  483. [OpenMP][Tool] archer tests require tsan (details)
  484. [JumpThreading] Use profile data even with the new pass manager (details)
  485. [OPENMP]Fix behaviour of defaultmap for OpenMP 4.5. (details)
  486. [coroutines] Remove assert on CoroutineParameterMoves in (details)
  487. [SLP][Test] Precommit tests for D70068 and D70587. NFC. (details)
  488. [JumpThreading] NFC: Don't cache F.hasProfileData() (details)
  489. [OPENMP]Simplify processing of context selectors, NFC. (details)
  490. [WebAssembly][SelectionDAG] Remove unused (details)
  491. [SLP] Enhance SLPVectorizer to vectorize vector aggregate (details)
  492. [libTooling] Add stencil combinators for nodes that may be pointers or (details)
  493. Register Objective-C property accessors with their property decls. (details)
  494. Complete complete types early when importing types from Clang module (details)
  495. Reformat code for readability. (details)
  496. [lldb][DataFormatters] Support pretty printing std::string when built (details)
  497. [lit] Attempt to print test summary on CTRL+C (details)
  498. [APFloat] Fix subtraction of subnormal numbers (details)
  499. Don't forward __pthread_mutex_* interceptors to pthread_mutex_* version (details)
  500. Reinstate MSan suppression of PR24578. (details)
  501. [APFloat] Enlarge ExponentType to 32bit integer (details)
  502. [clang-include-fixer] Suppress cmd prompt from Vim on Windows (details)
  503. Slightly speculative buildbot fix for issue reported in 8293f74 commit (details)
  504. [DWARF] Handle call sites with indirect call targets (details)
  505. [CMake] Support installation of InstrProfData.inc (details)
  506. Revert "[CMake] Support installation of InstrProfData.inc" (details)
  507. [RISCV] Use compiler-rt if no GCC installation detected (details)
  508. [OPENMP] [DOCS] correct status for use_device_addr clause (details)
  509. Don't report "main" as missing a prototype in freestanding mode (details)
  510. Fix typo to separate "-x" from warning flag. (details)
  511. [Sema] Use the canonical type in function isVector (details)
  512. [libc] Add a TableGen based header generator. (details)
  513. [AArch64] Add the pipeline model for Exynos M5 (details)
  514. [CodeMoverUtils] Added an API to check if an instruction can be safely (details)
  515. [InstCombine] Fix call guard difference with dbg (details)
  516. [Diagnostics] Put "deprecated copy" warnings into -Wdeprecated-copy (details)
  517. Revert "[Sema] Use the canonical type in function isVector" (details)
  518. gn build: Merge ae8a8c2db6c (details)
  519. Reland "[CMake] Support installation of InstrProfData.inc" (details)
  520. [TableGen] Add backend to generate command guide for tools using (details)
  521. Remove extraneous log enabling. (details)
  522. gn build: Merge 64ada7accbc (details)
  523. [MCA] Fix test cases (NFC) (details)
  524. [MC] Reorder MCInst fields to make sizeof(MCInst) smaller (details)
  525. [Driver] Make -static-libgcc imply static libunwind (details)
  526. [Examples] Add in_call_stack breakpoint function. (details)
  527. [Examples] Move structured-data unpacking out of the loop. (NFC) (details)
  528. Move vtordisp mode from Attr class to LangOptions.h, NFC (details)
  529. [Remarks] Allow empty temporary remark files (details)
  530. Separate the MS inheritance model enum from the attribute, NFC (details)
  531. Remove needless Attr.h include from DeclCXX.h, NFC (details)
  532. DebugInfo: Flag Dwarf Version metadata for merging during LTO (details)
  533. clang-tidy: don't use an absolute path in a test (details)
  534. gn build: Reland c52efdc5, "gn build: (manually) merge b5913e6d2f" (details)
  535. clang/Modules: Refactor CompilerInstance::loadModule, NFC (details)
  536. clang/Modules: Rename CompilerInstance::ModuleManager, NFC (details)
  537. [IR] Move global_objects and global_values out of line, NFC (details)
  538. [ASTMatchers] work around a miscompile; "NFC" (details)
  539. [DWARF] Support for loclist.dwo section in llvm and llvm-dwarfdump. (details)
  540. [WebAssembly] Use wasm-opt and LTO libraries when available. (details)
  541. [PhiValues] Remove redundant map searches (details)
  542. [X86][SSE] Split off generic isLaneCrossingShuffleMask helper. NFC. (details)
  543. [RISCV] Add missing REQUIRES to clang tests (details)
  544. Revert "[DWARF] Support for loclist.dwo section in llvm and (details)
  545. Recommit "[DWARF] Support for loclist.dwo section in llvm and (details)
  546. [Driver] Fix incorrect GNU triplet for PowerPC on SUSE Linux (details)
  547. [lldb][NFC] Fix LLDB build after ModuleManager->ASTReader rename (details)
  548. [InlineCost] Fix infinite loop in indirect call evaluation (details)
  549. AMDGPU: Handle waitcnt overflow (details)
  550. [lldb][NFC] NFC refactoring ClangExpressionDeclMap::LookupLocalVariable (details)
  551. Fix llvm-namespace-comment for macro expansions (details)
  552. [NFC] [AArch64] Fix wrong documentation for IsStoreRegOffsetOp (details)
  553. Revert "[InlineCost] Fix infinite loop in indirect call evaluation" (details)
  554. [FileCheck] Fixed -Wdeprecated-copy warning. NFCI. (details)
  555. [analyzer] Add custom filter functions for GenericTaintChecker (details)
  556. [lldb][NFC] NFC refactoring for (details)
  557. [analyzer][docs] NFC: Extend documentation for MallocOverflow checker (details)
  558. Fixed -Wdeprecated-copy warnings. NFCI. (details)
  559. Fixed typo introduced before commiting previous patch. NFCI. (details)
  560. Revert 'Fixed -Wdeprecated-copy warnings. NFCI.' (details)
  561. [ELF][test] Clean up some thunk tests (details)
  562. gn build: set HAVE_VCS_VERSION_INC while building Version.cpp (details)
  563. [lldb][NFC] Do an early exit in LookupLocalVarNamespace and (details)
  564. Reland 'Fixed -Wdeprecated-copy warnings. NFCI.' (details)
  565. [pdbutil] Fixed -Wdeprecated-copy in DbiModuleDescriptor (details)
  566. [Diagnostics] Make behaviour of Clang's -Wdeprecated-copy same as in GCC (details)
  567. [ModuloSchedule] Fix a bug in experimental expander (details)
  568. [PowerPC] Spill CR LT bits on P9 using setb (details)
  569. Fixed -Wdeprecated-copy warnings in gtest. NFCI. (details)
  570. [InstCombine] remove identity shuffle simplification for mask with (details)
  571. [Diagnostics] Warn for comparison with string literals expanded from (details)
  572. [TableGen] Fixed 'unused but set variable' warning. NFCI (details)
  573. [LoopInterchange] Adjust assertions when updating successors. (details)
  574. [mips] Split test into MIPS and microMIPS parts. NFC (details)
  575. Recommit f0c2a5a "[LV] Generalize conditions for sinking instrs for (details)
  576. [CMake] Use correct include path for InstrProfData.inc on Darwin (details)
  577. [llvm-objcopy][MachO] Implement --dump-section (details)
  578. Revert "[PowerPC] combine rlwinm+rlwinm to rlwinm" (details)
  579. [X86] Add 32-bit RUN line to fp128-libcalls.ll. Add nounwind to test (details)
  580. [NFC][Test] Adding the test for bswap + logic op for PowerPC (details)
  581. [lldb-vscode] Fix a race in test_extra_launch_commands (details)
  582. [clangd] Helper for getting nested namespace qualification (details)
  583. [clangd] Improve symbol qualification in DefineInline code action (details)
  584. [clangd] Fix diagnostic location for macro expansions (details)
  585. [yaml2obj/obj2yaml] - Add support for SHT_LLVM_DEPENDENT_LIBRARIES (details)
  586. [AVR] Fix endianness handling in AVR MC (details)
  587. [DebugInfo@O2][Utils] Undef instead of delete dbg.values in helper func (details)
  588. [ARM][MVE] Select vqneg (details)
  589. [lldb] Remove lldb's own ASTDumper (details)
  590. [DebugInfo] Avoid register coalesing unsoundly changing DBG_VALUE (details)
  591. [lldb][NFC] Allow range-based for-loops on VariableList (details)
  592. [AIX][XCOFF] Generate undefined symbol in symbol table for external (details)
  593. [AMDGPU] Fix function name in debug output (details)
  594. Revert 3f91705ca54 "ARM-NEON: make type modifiers orthogonal and allow (details)
  595. [InstCombine] simplify loop for shuffle mask canonicalization; NFC (details)
  596. [InstCombine] remove dead code from shuffle mask canonicalization; NFC (details)
  597. [InstCombine] simplify code for shuffle mask canonicalization; NFC (details)
  598. [DDG] Data Dependence Graph - Topological Sort (details)
  599. [scudo][standalone] Fix for releaseToOS prior to init (details)
  600. [InstCombine] prevent infinite loop from conflicting shuffle mask (details)
  601. [PowerPC] Fix VSX clobbers of CSR registers (details)
  602. [NFC][LoopFusion] Use isControlFlowEquivalent() from CodeMoverUtils. (details)
  603. [SystemZ]  Return the right offsets from getCalleeSavedSpillSlots(). (details)
  604. [ARM] Generate CMSE instructions from CMSE intrinsics (details)
  605. [WebAssembly] Change the llvm-lto dir to use the LLVM Version (details)
  606. [InstCombine] remove shuffle mask canonicalization that creates undef (details)
  607. [TargetLowering] Merge ExpandChainLibCall with makeLibCall (details)
  608. [lldb] [test] XFAIL ASAN tests on NetBSD (details)
  609. [libcxx] Omit unneeded locale fallbacks on Android 21+ (details)
  610. [lldb] [Process/NetBSD] Improve threading support (details)
  611. [lldb] [Process/NetBSD] Copy watchpoints to newly-created threads (details)
  612. [lldb] [Process/NetBSD] Fix handling concurrent watchpoint events (details)
  613. [Diagnostic] add a warning which warns about misleading indentation (details)
  614. [OPENMP]Fix PR41826: symbols visibility in device code. (details)
  615. [LLD] Add a default copy constructor to avoid warnings (details)
  616. [PowerPC] Rename DarwinDirective to CPUDirective (NFC) (details)
  617. [GWP-ASan] Add GWP_ASAN_ prefix to macros. (details)
  618. [PowerPC][compiler-rt][builtins]Add __fixtfti builtin on PowerPC (details)
  619. Revert "[DDG] Data Dependence Graph - Topological Sort" Revert for now (details)
  620. Revert "[Diagnostics] Put "deprecated copy" warnings into (details)
  621. Revert "[Diagnostic] add a warning which warns about misleading (details)
  622. [DAGCombiner] avoid crash on out-of-bounds insert index (PR44139) (details)
  623. Disallow use of __has_c_attribute in C++ mode. (details)
  624. Fix sanitizer-common build with glibc 2.31 (details)
  625. [ELF] Delete unused Configuration::zExecstack after D56554 (details)
  626. llvm-symbolizer: Fix FRAME handling of missing AT_name. (details)
  627. llvm-symbolizer: Support loclist in FRAME. (details)
  628. llvm-symbolizer: fix handling of DW_AT_specification in FRAME. (details)
  629. IRGen: Call SetLLVMFunctionAttributes{,ForDefinition} on (details)
  630. Fix an unused variable warning where a variable was only used in an (details)
  631. [X86] Add test case for pr44140. NFC (details)
  632. gn build: (manually) merge 9e676d9c7e (details)
  633. Fix new llvm-symbolizer tests on Windows. (details)
  634. [MemorySSA] Combine verifications. (details)
  635. [X86] Remove forward declaration of _invpcid from intrin.h. Rely on (details)
  636. [X86] Add proper execution domain information to the avx512vnni (details)
  637. As a follow-up to my initial mail to llvm-dev here's a first pass at the (details)
  638. Speculative fix for frame-loclist.s test on Windows. (details)
  639. Use InitLLVM to setup a pretty stack printer (details)
  640. Revert "Use InitLLVM to setup a pretty stack printer" (details)
  641. [clang][CodeGen] Fix wrong memcpy size of no_unique_address in (details)
  642. [X86] Add support for STRICT_FP_ROUND/STRICT_FP_EXTEND from/to fp128 (details)
  643. [LegalizeTypes] Remove code to create ISD::FP_TO_FP16 from (details)
  644. Revert "As a follow-up to my initial mail to llvm-dev here's a first (details)
  645. [BPF] add "llvm." prefix to BPF internally created globals (details)
  646. [X86] Updated strict fp scalar tests and add fp80 tests for D68857, NFC. (details)
  647. [ELF] Support input section description .rel[a].dyn in /DISCARD/ (details)
  648. [X86] Return Op instead of SDValue() for lowering flags_read/write (details)
  649. [Attributor] Track a GEP Instruction in align deduction (details)
  650. [LLD][ELF] - Make compression level be dependent on -On. (details)
  651. [clangd] Implement cross-file rename. (details)
  652. clang-format-vs : Fix typo NUGET_EXE_DIR on README (details)
  653. Recommit ARM-NEON: make type modifiers orthogonal and allow multiple (details)
  654. [lldb][NFC] NULL -> nullptr in (details)
  655. [InstCombine] Optimize some memccpy calls to memcpy/null (details)
  656. [ARM][ConstantIslands] Correct block size update (details)
  657. [InstCombine] Fixed std::min on some bots. NFCI (details)
  658. [lldb][NFC] Extract pointer to member type parsing from (details)
  659. [ARM][ReachingDefs] RDA in LoLoops (details)
  660. [SystemZ]  Don't build a PPA instruction with an immediate 0 operand. (details)
  661. [ARM][ReachingDefs] Remove dead code in loloops. (details)
  662. [AArch64][SVE] Implement floating-point conversion intrinsics (details)
  663. [OpenCL] Add work-group and miscellaneous vector builtin functions (details)
  664. [lldb][NFC] Extract array type parsing from (details)
  665. [lldb][NFCI] Extract subroutine parsing from (details)
  666. [lldb][NFC] Extract enum parsing from (details)
  667. [X86][MC] no error diagnostic for out-of-range jrcxz/jecxz/jcxz (details)
  668. [openmp] Recognise ARMv7ve machine arch. (details)
  669. [yaml2obj] - Teach tool to describe SHT_GNU_verdef section with a (details)
  670. [NFC] ASSERT_EQ before accessing items in containers (details)
  671. [clangd] Speed up when building rename edit. (details)
  672. [lldb][NFC] Extract type modifier parsing from (details)
  673. [lldb] Add boilerplate to recognize the .debug_rnglists.dwo section (details)
  674. [lldb][NFC] Simplify structure parsing code in (details)
  675. [yaml2obj] - Fix BB after «[yaml2obj] - Teach tool to describe (details)
  676. [lldb][NFC] Remove no longer unused variable in (details)
  677. [lldb/symbolvendorelf] Copy more sections from separate debug files (details)
  678. [lldb] remove unsigned Stream::operator<< overloads (details)
  679. Partially reland "[Diagnostics] Put "deprecated copy" warnings into (details)
  680. [lldb] remove a superfluous semicolon (details)
  681. [lldb] fix a -Wcast-qual warning (details)
  682. [llvm-readobj][test] - Cleanup the many-sections.s test case. (details)
  683. [lldb] Use llvm::format in AppleObjCRuntimeV2.cpp (details)
  684. [lldb][NFC] Modernize string handling in (details)
  685. [InferFuncAttributes][Attributor] add tests for 'dereferenceable'; NFC (details)
  686. [lldb] Avoid snprintf in PlatformRemoteDarwinDevice (details)
  687. [llvm-readobj/llvm-readelf] - Reimplement dumping of the SHT_GNU_verdef (details)
  688. [RISCV] Handle fcopysign(f32, f64) and fcopysign(f64, f32) (details)
  689. [LegalizeTypes][RISCV] Soften FCOPYSIGN operand (details)
  690. [clang-tidy] Use range-for for check registration. NFC (details)
  691. [lldb] [test] Un-XFAIL lldb-server tests fixed on NetBSD (details)
  692. [OPENMP]Fix PR44133: crash on lambda reductions in templates. (details)
  693. [AMDGPU] Fix emitIfBreak CF lowering: use temp reg to make register (details)
  694. [XCOFF][AIX] Check linkage on the function, and two fixes for comments (details)
  695. [DebugInfo] Disallow fragmenting DIExpressions with shift operators (details)
  696. [ARM] Lots of MVE offset masked load and store tests. NFC (details)
  697. [Codegen][ARM] Add addressing modes from masked loads and stores (details)
  698. [ARM] Clean up the load and store code. NFC (details)
  699. [OPENMP]Simplify printing of declare variant attribute, NFC. (details)
  700. [OPENMP]Remove tab in message, NFC. (details)
Commit 7bed2cb8535085cf041f6f5d0c65135a898c302e by david.green
[InstCombine] Add extra tests for overflow_to_sat.ll. NFC
The file was modifiedllvm/test/Transforms/InstCombine/overflow_to_sat.ll
Commit 03fce6b12e677144968045288df60da92fea2968 by david.green
[InstCombine] Canonicalize sadd.with.overflow with clamp to sadd.sat
This adds to D69245, adding extra signed patterns for folding from a
sadd_with_overflow to a sadd_sat. These are more complex than the
unsigned patterns, as the overflow can occur in either direction.
For the add case, the positive overflow can only occur if both of the
values are positive (same for both the values being negative). So there
is an extra select on whether to use the positive or negative overflow
limit.
Differential Revision: https://reviews.llvm.org/D69252
The file was modifiedllvm/test/Transforms/InstCombine/overflow_to_sat.ll
The file was modifiedllvm/lib/Transforms/InstCombine/InstCombineSelect.cpp
Commit 08390c52a2902502cd9b25472aa4c6380230c18e by david.green
[InstCombine] Canonicalize ssub.with.overflow with clamp to ssub.sat
Working on top of D69252, this adds canonicalisation patterns for
ssub.with.overflow to ssub.sats.
Differential Revision: https://reviews.llvm.org/D69753
The file was modifiedllvm/lib/Transforms/InstCombine/InstCombineSelect.cpp
The file was modifiedllvm/test/Transforms/InstCombine/overflow_to_sat.ll
Commit f5870b0f36bec3579e54994abcca9b809c056e1b by spatel
[SimplifyCFG] add tests for possible FP speculative select; NFC
It doesn't seem that there are any perf/param knobs that can be turned
to create selects for the FP variants of the tests, but that may not
always be true in the future. If it changes, we should propagate FMF.
The file was modifiedllvm/test/Transforms/SimplifyCFG/SpeculativeExec.ll
Commit 23f736059c704b95643dfc63425444044b57a973 by spatel
[SimplifyCFG] add fast-math-flags to tests for better coverage; NFC
The conversion to select fails to propagate FMF.
The file was modifiedllvm/test/Transforms/SimplifyCFG/speculate-math.ll
Commit ebf9bf2cbc8fa68d536e481e370c4ba40ce61a8a by spatel
[SimplifyCFG] propagate fast-math-flags (FMF) from phi to select
Similar to/extension of D70208 (rGee0882bdf866), but this one may
finally allow closing motivating bugs.
This is another step towards having FMF apply only to FP values rather
than those + fcmp. See PR38086 for one of the original
discussions/motivations: https://bugs.llvm.org/show_bug.cgi?id=38086
And the test here is derived from PR39535:
https://bugs.llvm.org/show_bug.cgi?id=39535
Currently, we lose FMF when converting any phi to select in SimplifyCFG.
There are a small number of similar changes needed to correct within
SimplifyCFG, so it should be quick to patch this pass up.
FMF was extended to select and phi with: D61917 D67564
The file was modifiedllvm/test/Transforms/SimplifyCFG/speculate-math.ll
The file was modifiedllvm/lib/Transforms/Utils/SimplifyCFG.cpp
Commit a516fbac520287307e909761dc7a083065d16049 by sstipanovic
[Attributor] Use nofree argument attribute for heap-to-stack conversion
Reviewers: jdoerfert, uenoku
Subscribers:
Differential Revision: https://reviews.llvm.org/D70140
The file was modifiedllvm/lib/Transforms/IPO/Attributor.cpp
The file was modifiedllvm/test/Transforms/FunctionAttrs/heap_to_stack.ll
Commit 28c183859ae0e92b638721a738019fe7265910a5 by flo
[ConstantFold] Add some tests for binops with constants and undefs.
Precommit tests for D70169.
The file was addedllvm/test/Analysis/ConstantFolding/binop-identity-undef.ll
Commit 8eeabbaf5da31f44b42f0ef7d625640570b0a620 by flo
[ConstantFold] Handle identity folds at top of ConstantFoldBinaryInst
Currently we miss folds with undef and identity values for binary ops
that do not fold to undef in general.
We can generalize the identity simplifications and do them before
checking for undef in particular.
Alive checks:
* OR - https://rise4fun.com/Alive/8OsK
* AND - https://rise4fun.com/Alive/e3tE
This will also allow us to remove some now redundant cases throughout
the function, but I would like to do this as follow-up. That should make
tracking down potential issues easier.
Reviewers: spatel, RKSimon, lebedev.ri
Reviewed By: spatel
Differential Revision: https://reviews.llvm.org/D70169
The file was modifiedllvm/test/Analysis/ConstantFolding/binop-identity-undef.ll
The file was modifiedllvm/lib/IR/ConstantFold.cpp
The file was modifiedllvm/test/Transforms/InstCombine/vec_shuffle.ll
Commit d4ba11ae3261bb0dc805d33fbe15e9591e926a33 by craig.topper
[LegalizeTypes] Merge ExpandIntRes_LLROUND and ExpandIntRes_LLRINT into
one function that handles both. NFC
These too functions are were the same except for which libcall gets
emitted. Just merge them into one.
This is prep work for some other work including strict fp support.
The file was modifiedllvm/lib/CodeGen/SelectionDAG/LegalizeTypes.h
The file was modifiedllvm/lib/CodeGen/SelectionDAG/LegalizeIntegerTypes.cpp
Commit 9b515b6dd919cbd67ba12c01530708c5617e288f by craig.topper
[LegalizeTypes] Remove PromoteFloat support form
ExpandIntRes_LLROUND_LLRINT.
This code isn't exercised, and was in the wrong place. If we need this,
we would need to promote the type before figuring out which libcall to
use.
I'm choosing to remove it rather than fixing since we don't support
PromoteFloat for LRINT/LROUND/LLRINT/LLROUND when the result type is
legal so I don't see much reason to support it for the case where the
result type isn't legal.
The file was modifiedllvm/lib/CodeGen/SelectionDAG/LegalizeIntegerTypes.cpp
Commit 1b0efe2b1778e821aade88667b1cb82d1c93f7e9 by craig.topper
[LegalizeTypes] When expanding the integer result of LLROUND/LLRINT,
also call GetSoftenedFloat if the floating point input needs to be
softened.
Before this we were emitting a bitcast to integer from the lowering code
that itself will need to be legalized. By calling GetSoftenedFloat we
get the integer conversion in one step without needing to relegalize a
bitcast.
The file was modifiedllvm/lib/CodeGen/SelectionDAG/LegalizeIntegerTypes.cpp
Commit 5d67d81f484f935b709918ad99462e32efa3b17a by spatel
[InstCombine] prevent crashing/assert on shift constant expression
(PR44028)
The binary operator cast implies an instruction, but the matcher for
shift does not: https://bugs.llvm.org/show_bug.cgi?id=44028
The file was modifiedllvm/test/Transforms/InstCombine/shift-logic.ll
The file was modifiedllvm/lib/Transforms/InstCombine/InstCombineShifts.cpp
Commit b11386f9be9b2dc7276a758d64f66833da10bdea by ruiu
Make it possible to redirect not only errs() but also outs()
This change is for those who use lld as a library. Context:
https://reviews.llvm.org/D70287
This patch adds a new parmeter to lld::*::link() so that we can pass an
raw_ostream object representing stdout. Previously, lld::*::link() took
only an stderr object.
Justification for making stdoutOS and stderrOS mandatory: I wanted to
make link() functions to take stdout and stderr in that order. However,
if we change the function signature from
  bool link(ArrayRef<const char *> args, bool canExitEarly,
           raw_ostream &stderrOS = llvm::errs());
to
  bool link(ArrayRef<const char *> args, bool canExitEarly,
           raw_ostream &stdoutOS = llvm::outs(),
           raw_ostream &stderrOS = llvm::errs());
, then the meaning of existing code that passes stderrOS silently
changes (stderrOS would be interpreted as stdoutOS). So, I chose to make
existing code not to compile, so that developers can fix their code.
Differential Revision: https://reviews.llvm.org/D70292
The file was modifiedlld/Common/ErrorHandler.cpp
The file was modifiedlld/wasm/Driver.cpp
The file was modifiedlld/lib/Core/Resolver.cpp
The file was modifiedlld/lib/ReaderWriter/MachO/LayoutPass.cpp
The file was modifiedlld/lib/Driver/DarwinLdDriver.cpp
The file was modifiedlld/unittests/MachOTests/MachONormalizedFileBinaryWriterTests.cpp
The file was modifiedlld/ELF/MapFile.cpp
The file was modifiedlld/lib/ReaderWriter/MachO/MachOLinkingContext.cpp
The file was modifiedlld/MinGW/Driver.cpp
The file was modifiedlld/include/lld/Common/Driver.h
The file was modifiedlld/include/lld/Common/LLVM.h
The file was modifiedlld/lib/ReaderWriter/FileArchive.cpp
The file was modifiedlld/ELF/DriverUtils.cpp
The file was modifiedlld/tools/lld/lld.cpp
The file was modifiedlld/COFF/DriverUtils.cpp
The file was modifiedlld/include/lld/Common/ErrorHandler.h
The file was modifiedlld/COFF/Driver.cpp
The file was modifiedlld/lib/Core/SymbolTable.cpp
The file was modifiedlld/lib/ReaderWriter/MachO/MachONormalizedFileToAtoms.cpp
The file was modifiedlld/COFF/Writer.cpp
The file was modifiedlld/ELF/Driver.cpp
Commit a937a588dd29fa77018561e2eab5dc760c766229 by Duncan P. N. Exon Smith
llvm/ObjCARC: Use continue to reduce some nesting, NFC
The file was modifiedllvm/lib/Transforms/ObjCARC/ObjCARCOpts.cpp
Commit 5864cb38da701793171c8a8a69ae5410af08e181 by modocache
[docs] Fix broken links in Kaleidoscope chapter 3
Several links in this document referred to `LangImpl4.html` or
`LangImpl7.html`. However, now these pages use two digits, so for these
links to function they need to be modified to `LangImpl04.html`, and so
on -- note the extra `0`.
The file was modifiedllvm/docs/tutorial/MyFirstLanguageFrontend/LangImpl03.rst
Commit a0337d269b7c3305d4e0a729d39d389a0aaec928 by czhengsz
[PowerPC] extend PPCPreIncPrep Pass for ds/dq form
Now, PPCPreIncPrep pass changes a loop to update form and update all
load/store with same base accordingly. We can do more for load/store
with same base, for example, convert load/store with same base to ds/dq
form.
Reviewed by: jsji
Differential Revision: https://reviews.llvm.org/D67088
The file was modifiedllvm/test/CodeGen/PowerPC/swaps-le-1.ll
The file was modifiedllvm/test/CodeGen/PowerPC/loop-instr-form-prepare.ll
The file was modifiedllvm/lib/Target/PowerPC/PPCLoopPreIncPrep.cpp
Commit af435286e53d769d14d7a7fff6b1e3a075bfefca by craig.topper
[LegalizeTypes][X86] Add support for expanding the result type of
STRICT_LLROUND and STRICT_LLRINT.
This doesn't handle softening the input type, but we don't handle
softening any of the strict nodes yet. Skipping that made it easy to
reuse an existing function for creating a libcall from a node with a
chain.
The file was modifiedllvm/lib/CodeGen/SelectionDAG/LegalizeIntegerTypes.cpp
The file was modifiedllvm/test/CodeGen/X86/fp-intrinsics.ll
Commit 783cb86b616d9de59213ea17649d6e2df8c1ebbb by Duncan P. N. Exon Smith
llvm/ObjCARC: Split OptimizeIndividualCallImpl out of
OptimizeIndividualCalls, NFC
Split out a helper function for the individual call optimizations and
skip useless calls to it (where the instruction is not an ARC
intrinsic).  Besides reducing indentation (and possibly speeding up
compile time in some small way), an upcoming patch will add additional
calls and expand out the `switch`.
The file was modifiedllvm/lib/Transforms/ObjCARC/ObjCARCOpts.cpp
Commit f82dba019253ced73ceadfde10e5f150bdb182f3 by eric
Rename __is_foo_iterator traits to reflect their Cpp17 nature.
With the upcoming introduction of iterator concepts in ranges, the
meaning of "__is_contiguous_iterator" changes drastically.
Currently we intend it to mean "does it have this iterator category",
but it could now also mean "does it meet the requirements of this
concept", and these can be different.
The file was modifiedlibcxx/include/filesystem
The file was modifiedlibcxx/include/deque
The file was modifiedlibcxx/include/iterator
The file was modifiedlibcxx/include/algorithm
The file was modifiedlibcxx/include/vector
The file was modifiedlibcxx/include/forward_list
The file was modifiedlibcxx/include/__split_buffer
The file was modifiedlibcxx/test/libcxx/iterators/trivial_iterators.pass.cpp
The file was modifiedlibcxx/include/string
The file was modifiedlibcxx/include/list
The file was modifiedlibcxx/include/__tree
The file was modifiedlibcxx/include/regex
The file was modifiedlibcxx/include/queue
Commit 909d7bf9a7c5eb728f4660541ab33089132409fe by ruiu
Fix Windows buildbots
`stdout` and `stderr` might be defined as macros, so we needed to avoid
using them as variable names.
The file was modifiedlld/include/lld/Common/Driver.h
Commit 5a56d2aa33c6f6280a07cc0ef81ea0d74d081d68 by craig.topper
[LegalizeTypes] Remove unnecessary conversion from EVT to MVT to
MVT::SimpleValueType just to assign back to EVT. NFC
The file was modifiedllvm/lib/CodeGen/SelectionDAG/LegalizeFloatTypes.cpp
Commit bfbbf0aba81a84da8b53d4d159d080e77ad8ee70 by craig.topper
[LegalizeTypes] Remove SoftenFloat handling from
ExpandIntRes_LLROUND_LLRINT and remove assert from the strict fp path.
These were both recently added. While the call to GetSoftenedFloat is a
little more optimal, we don't do it in the expand for FP_TO_SINT/UINT so
there's no real reason to do it here. This avoids a FIXME for strict fp.
The file was modifiedllvm/lib/CodeGen/SelectionDAG/LegalizeIntegerTypes.cpp
Commit 816ff985f51ea984139c0b141d402e0143bd9f2d by jrtc27
[Sparc] Fix "Cannot select" error for AtomicFence on 32-bit V9
Summary: This also adds testing of 32-bit V9 atomic lowering, splitting
the 64-bit-only tests out into their own file.
Reviewers: venkatra, jyknight
Reviewed By: jyknight
Subscribers: hiraditya, fedor.sergeev, jfb, llvm-commits, glaubitz
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D69352
The file was modifiedllvm/test/CodeGen/SPARC/atomics.ll
The file was modifiedllvm/lib/Target/Sparc/SparcInstrInfo.td
The file was modifiedllvm/lib/Target/Sparc/SparcInstr64Bit.td
The file was addedllvm/test/CodeGen/SPARC/64atomics.ll
Commit c0f6ad7d1f3ccb9d0b9ce9ef8dfa06409ccf1b3e by pavel
DWARF location lists: Add section index dumping
Summary: As discussed in D70081, this adds the ability to dump section
names/indices to the location list dumper. It does this by moving the
range specific logic from DWARFDie.cpp:dumpRanges into the
DWARFAddressRange class.
The trickiest part of this patch is the backflip in the meanings of the
two dump flags for the location list sections.
The dumping of "raw" location list data is now controlled by
"DisplayRawContents" flag. This frees up the "Verbose" flag to be used
to control whether we print the section index. Additionally, the
DisplayRawContents flag is set for section-based dumps whenever the
--verbose option is passed, but this is not done for the "inline" dumps.
Also note that the index dumping currently does not work for the DWARF
v5 location lists, as the parser does not fill out the appropriate
fields. This will be done in a separate patch.
Reviewers: dblaikie, probinson, JDevlieghere, SouraVX
Subscribers: sdardis, hiraditya, jrtc27, atanasyan, arphaman, aprantl,
llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D70227
The file was modifiedllvm/test/DebugInfo/X86/debug-loc-frame.ll
The file was modifiedllvm/test/DebugInfo/X86/DW_AT_location-reference.ll
The file was modifiedllvm/lib/DebugInfo/DWARF/DWARFContext.cpp
The file was modifiedllvm/lib/DebugInfo/DWARF/DWARFAddressRange.cpp
The file was modifiedllvm/test/DebugInfo/X86/dbg-value-regmask-clobber.ll
The file was modifiedllvm/test/DebugInfo/X86/dbg-value-frame-index.ll
The file was modifiedllvm/lib/DebugInfo/DWARF/DWARFDie.cpp
The file was modifiedllvm/include/llvm/DebugInfo/DWARF/DWARFAddressRange.h
The file was modifiedllvm/lib/DebugInfo/DWARF/DWARFDebugLoc.cpp
The file was modifiedllvm/test/CodeGen/X86/debug-loclists.ll
The file was modifiedllvm/test/DebugInfo/ARM/PR26163.ll
The file was modifiedllvm/test/DebugInfo/X86/debug-loc-offset.mir
The file was modifiedllvm/test/DebugInfo/Mips/dsr-fixed-objects.ll
Commit 2d739f98d8a53e38bf9faa88cdb6b0c2a363fb77 by anna.welker
[ARM] Allocatable Global Register Variables for ARM
      Provides support for using r6-r11 as globally scoped
     register variables. This requires a -ffixed-rN flag
     in order to reserve rN against general allocation.
      If for a given GRV declaration the corresponding flag
     is not found, or the the register in question is the
     target's FP, we fail with a diagnostic.
      Differential Revision: https://reviews.llvm.org/D68862
The file was modifiedclang/lib/Basic/Targets/ARM.h
The file was addedllvm/test/CodeGen/ARM/reg-alloc-with-fixed-reg-r6-modified.ll
The file was addedllvm/test/CodeGen/ARM/reg-alloc-with-fixed-reg-r6.ll
The file was modifiedllvm/lib/Target/ARM/ARMAsmPrinter.cpp
The file was modifiedllvm/lib/Target/ARM/ARMSubtarget.h
The file was modifiedllvm/lib/Target/ARM/ARM.td
The file was addedllvm/test/Feature/reserve_global_reg.ll
The file was addedclang/test/Driver/arm-reserved-reg-options.c
The file was modifiedllvm/lib/Target/ARM/ARMFrameLowering.cpp
The file was modifiedclang/include/clang/Driver/Options.td
The file was addedclang/test/Sema/arm-global-regs.c
The file was modifiedllvm/lib/Target/ARM/ARMSubtarget.cpp
The file was modifiedclang/include/clang/Basic/TargetInfo.h
The file was modifiedclang/include/clang/Basic/DiagnosticGroups.td
The file was modifiedclang/lib/Driver/ToolChains/Arch/ARM.cpp
The file was addedllvm/test/CodeGen/Thumb/callee_save_reserved.ll
The file was modifiedclang/lib/Sema/SemaDecl.cpp
The file was modifiedllvm/lib/Target/ARM/ARMISelLowering.cpp
The file was addedllvm/test/CodeGen/ARM/reg-alloc-fixed-r6-vla.ll
The file was modifiedclang/include/clang/Basic/DiagnosticDriverKinds.td
The file was modifiedclang/docs/ClangCommandLineReference.rst
The file was modifiedclang/include/clang/Basic/DiagnosticSemaKinds.td
The file was addedllvm/test/CodeGen/ARM/reg-alloc-wout-fixed-regs.ll
The file was modifiedllvm/lib/Target/ARM/ARMBaseRegisterInfo.cpp
The file was modifiedclang/lib/Basic/Targets/ARM.cpp
The file was modifiedllvm/lib/Target/ARM/ARMTargetTransformInfo.h
Commit a433e7141fb3f697e6430437ee73b19076603c1b by sam.mccall
[AST] Attach comment in `/** doc */ typedef struct A {} B` to B as well
as A.
Summary: Semantically they're the same thing, and it's important when
the underlying struct is anonymous.
There doesn't seem to be a problem attaching the same comment to
multiple things as it already happens with `/** doc */ int a, b;`
This affects an Index test but the results look better (name present,
USR points to the typedef).
Fixes https://github.com/clangd/clangd/issues/189
Reviewers: kadircet, lh123
Subscribers: ilya-biryukov, jkorous, arphaman, usaxena95, cfe-commits
Tags: #clang
Differential Revision: https://reviews.llvm.org/D70203
The file was modifiedclang/lib/AST/ASTContext.cpp
The file was modifiedclang/test/Index/annotate-comments-typedef.m
The file was modifiedclang-tools-extra/clangd/unittests/XRefsTests.cpp
The file was modifiedclang/test/Sema/warn-documentation.cpp
Commit e8924d6403eba06438f669e434eee11016f20a67 by mgorny
[lldb] [test] Enable lldb-server tests on NetBSD, and set XFAILs
Differential Revision: https://reviews.llvm.org/D70335
The file was modifiedlldb/packages/Python/lldbsuite/test/dotest.py
The file was modifiedlldb/packages/Python/lldbsuite/test/tools/lldb-server/libraries-svr4/TestGdbRemoteLibrariesSvr4Support.py
The file was modifiedlldb/packages/Python/lldbsuite/test/tools/lldb-server/thread-name/TestGdbRemoteThreadName.py
The file was modifiedlldb/packages/Python/lldbsuite/test/tools/lldb-server/TestGdbRemoteKill.py
The file was modifiedlldb/packages/Python/lldbsuite/test/tools/lldb-server/TestGdbRemoteProcessInfo.py
The file was modifiedlldb/packages/Python/lldbsuite/test/tools/lldb-server/TestGdbRemoteAttach.py
The file was modifiedlldb/packages/Python/lldbsuite/test/tools/lldb-server/TestGdbRemote_qThreadStopInfo.py
The file was modifiedlldb/packages/Python/lldbsuite/test/tools/lldb-server/TestGdbRemoteAuxvSupport.py
The file was modifiedlldb/packages/Python/lldbsuite/test/tools/lldb-server/TestGdbRemoteThreadsInStopReply.py
The file was modifiedlldb/packages/Python/lldbsuite/test/tools/lldb-server/signal-filtering/TestGdbRemote_QPassSignals.py
The file was modifiedlldb/packages/Python/lldbsuite/test/tools/lldb-server/register-reading/TestGdbRemoteGPacket.py
Commit 23a766dcad47993f632ab22ab3a8f3dc977bd838 by mgorny
[lldb] [Process/NetBSD] Implement thread name getting
Implement thread name getting sysctl() on NetBSD.  Also fix the
incorrect type in pthread_setname_np() in the relevant test.
Differential Revision: https://reviews.llvm.org/D70363
The file was modifiedlldb/source/Plugins/Process/NetBSD/NativeThreadNetBSD.cpp
The file was modifiedlldb/packages/Python/lldbsuite/test/tools/lldb-server/thread-name/main.cpp
The file was modifiedlldb/packages/Python/lldbsuite/test/tools/lldb-server/thread-name/TestGdbRemoteThreadName.py
Commit 4a4dd85e5ab51aa8c01c690cd14205af157178e7 by simon.tatham
[ARM,MVE] Add intrinsics for vector comparisons.
This adds the `vcmp` family of ACLE MVE intrinsics: vector/vector,
vector/scalar, and the predicated forms of both. All are represented
using standard existing IR: vector/scalar comparisons are represented by
making a vector out of the scalar first, and predicated forms are
represented by taking the bitwise AND of the input predicate and the
output of the comparison. Existing LLVM-side tests demonstrate that ISel
will pattern-match all of that back down to single MVE VCMPs.
The idiom of handling a vector/scalar operation by generating IR to
expand the scalar into a second vector is going to be needed for a lot
of MVE intrinsics, so to make that easy, I've provided a helper function
that automatically works out the element count.
The comparison intrinsics are the first ones that have to //return// a
predicate, in the user-facing `mve_pred16_t` format. This means we have
to use the `arm_mve_pred_v2i` low-level intrinsic to convert it back
from the logical `<n x i1>` form used in IR. I've done that explicitly
in the code gen specification for the builtins, because it happens much
more rarely in the ACLE API than passing a Predicate as input, so it
didn't seem worth automating in MveEmitter.
Reviewers: ostannard, MarkMurrayARM, dmgreen
Reviewed By: dmgreen
Subscribers: kristof.beyls, hiraditya, cfe-commits, llvm-commits
Tags: #clang, #llvm
Differential Revision: https://reviews.llvm.org/D70297
The file was modifiedclang/include/clang/Basic/arm_mve.td
The file was modifiedclang/lib/CodeGen/CGBuiltin.cpp
The file was addedclang/test/CodeGen/arm-mve-intrinsics/compare.c
The file was modifiedclang/include/clang/Basic/arm_mve_defs.td
Commit f4f77aa53e5b872bd8a93c3a193714d8eba9578c by simon.tatham
[ARM,MVE] Add InstCombine rules for pred_i2v / pred_v2i.
If you're writing C code using the ACLE MVE intrinsics that passes the
result of a vcmp as input to a predicated intrinsic, e.g.
  mve_pred16_t pred = vcmpeqq(v1, v2);
v_out = vaddq_m(v_inactive, v3, v4, pred);
then clang's codegen for the compare intrinsic will create calls to
`@llvm.arm.mve.pred.v2i` to convert the output of `icmp` into an
`mve_pred16_t` integer representation, and then the next intrinsic will
call `@llvm.arm.mve.pred.i2v` to convert it straight back again. This
will be visible in the generated code as a `vmrs`/`vmsr` pair that move
the predicate value pointlessly out of `p0` and back into it again.
To prevent that, I've added InstCombine rules to remove round trips of
the form `v2i(i2v(x))` and `i2v(v2i(x))`. Also I've taught InstCombine
about the known and demanded bits of those intrinsics. As a result, you
now get just the generated code you wanted:
  vpt.u16 eq, q1, q2
vaddt.u16 q0, q3, q4
Reviewers: ostannard, MarkMurrayARM, dmgreen
Reviewed By: dmgreen
Subscribers: kristof.beyls, hiraditya, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D70313
The file was modifiedllvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
The file was addedllvm/test/CodeGen/Thumb2/mve-vpt-from-intrinsics.ll
The file was addedllvm/test/Transforms/InstCombine/ARM/mve-v2i2v.ll
Commit 03e7fb2e075e2cfca7a0c9e3730a48d52101dec2 by qshanz
[NFC][Test] Add the vavg test for PowerPC
The file was addedllvm/test/CodeGen/PowerPC/vavg.ll
Commit c00e5cf29d49e51701b00382a3f41a4dfe1c0c0f by simon.cook
[RISCV] Set triple based on -march flag
For RISC-V the value provided to -march should determine whether to
compile for 32- or 64-bit RISC-V irrespective of the target provided to
the Clang driver. This adds a test for this flag for RISC-V and sets the
Target architecture correctly in these cases.
Differential Revision: https://reviews.llvm.org/D54214
The file was modifiedclang/docs/ReleaseNotes.rst
The file was modifiedclang/test/Driver/riscv-arch.c
The file was modifiedclang/lib/Driver/Driver.cpp
Commit eedb9648229ff14bf8d5a526099f765ea23f3777 by simon.cook
[RISCV] Add assembly mnemonic spell checking
Summary: This allows the assembler to suggest alternative assembly
mnemonics when an invalid one has been provided.
Reviewers: asb, lenary, lewis-revill
Reviewed By: asb
Subscribers: hiraditya, rbar, johnrusso, apazos, sabuasal, niosHD,
kito-cheng, shiva0217, jrtc27, MaskRay, zzheng, edward-jones, rogfer01,
MartinMosbeck, brucehoult, the_o, rkruppe, PkmX, jocewei, psnobl, benna,
Jim, s.egerton, pzheng, sameer.abuasal, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D69894
The file was modifiedllvm/lib/Target/RISCV/AsmParser/RISCVAsmParser.cpp
The file was addedllvm/test/MC/RISCV/invalid-instruction-spellcheck.s
Commit 9df9dec926e2782e4f62b5a39f18619c7d928eba by llvm-dev
Fix signed/unsigned comparison warning. NFCI.
The file was modifiedllvm/lib/Target/PowerPC/PPCLoopPreIncPrep.cpp
Commit b68191e729e0059c4edf7a3dbfde2bf38f419240 by llvm-dev
[X86][SSE] Add test for extractelement with multiple uses
Mentioned in D70267
The file was modifiedllvm/test/CodeGen/X86/extractelement-load.ll
Commit 1e3cc06d986dd04b0973ade251e9f2e129315509 by llvm-dev
Fix "not all control paths return a value" warning. NFCI.
The file was modifiedclang/lib/Sema/SemaOpenMP.cpp
Commit 5181adab6183d058509ca6da7c1306ced3a61e1c by hokein.wu
[clangd] Expose the xref's incomplete flag to clangdServer API.
Summary: so that clangd C++ API users (via ClangdServer) can access it.
Reviewers: sammccall
Subscribers: ilya-biryukov, MaskRay, jkorous, arphaman, kadircet,
usaxena95, cfe-commits
Tags: #clang
Differential Revision: https://reviews.llvm.org/D70380
The file was modifiedclang-tools-extra/clangd/XRefs.cpp
The file was modifiedclang-tools-extra/clangd/unittests/XRefsTests.cpp
The file was modifiedclang-tools-extra/clangd/ClangdServer.cpp
The file was modifiedclang-tools-extra/clangd/ClangdServer.h
The file was modifiedclang-tools-extra/clangd/XRefs.h
The file was modifiedclang-tools-extra/clangd/ClangdLSPServer.cpp
Commit 3f08ad611aa26db2e719705b8fb60f4661d97b98 by graham.hunter
[SVE][CodeGen] Scalable vector MVT size queries
* Implements scalable size queries for MVTs, split out from D53137.
* Contains a fix for FindMemType to avoid using scalable vector type
to contain non-scalable types.
* Explicit casts for several places where implicit integer sign
changes or promotion from 32 to 64 bits caused problems.
* CodeGenDAGPatterns will treat scalable and non-scalable vector types
as different.
Reviewers: greened, cameron.mcinally, sdesmalen, rovka
Reviewed By: rovka
Differential Revision: https://reviews.llvm.org/D66871
The file was modifiedllvm/include/llvm/CodeGen/SelectionDAGNodes.h
The file was modifiedllvm/lib/Target/AArch64/AArch64ISelLowering.cpp
The file was modifiedllvm/lib/Target/Mips/MipsISelLowering.cpp
The file was modifiedllvm/lib/Target/AArch64/AArch64StackOffset.h
The file was modifiedllvm/lib/Target/PowerPC/PPCISelDAGToDAG.cpp
The file was modifiedllvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
The file was modifiedllvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
The file was modifiedllvm/utils/TableGen/CodeGenDAGPatterns.cpp
The file was modifiedllvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
The file was modifiedllvm/include/llvm/CodeGen/ValueTypes.h
The file was modifiedllvm/lib/CodeGen/SelectionDAG/StatepointLowering.cpp
The file was modifiedllvm/include/llvm/Support/MachineValueType.h
The file was modifiedllvm/lib/Target/Hexagon/HexagonISelLowering.cpp
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.cpp
The file was modifiedllvm/lib/Target/NVPTX/NVPTXISelDAGToDAG.cpp
The file was modifiedllvm/unittests/CodeGen/ScalableVectorMVTsTest.cpp
The file was modifiedllvm/lib/CodeGen/ValueTypes.cpp
The file was modifiedllvm/lib/Target/ARM/ARMISelLowering.cpp
The file was modifiedllvm/include/llvm/Support/TypeSize.h
The file was modifiedllvm/lib/CodeGen/SelectionDAG/LegalizeVectorTypes.cpp
Commit 1ce5fcda17e6683bcbec8585349afcad02a9c98a by czhengsz
[PowerPC] [NFC] add IR testcases for folding rlwinma.
The file was addedllvm/test/CodeGen/PowerPC/fold-rlwinm-1.ll
Commit dbb64b39b8bc137bb88b9f847ab8adf25a8c8583 by aaron.smith
Fix a print error found while testing llvm-objcopy
A value was not printed as hex. This updates the output and test cases.
The file was modifiedllvm/test/Object/invalid.test
The file was modifiedllvm/include/llvm/Object/ELF.h
Commit 869d904df76c9e74e040b072b4bc8114fd20f5bc by Raphael Isemann
[lldb][NFC] Cleanup comments in ClangASTSource.h
The current file doesn't follow the 80 character limit and uses this
cramped comment style that is hard to read.
The file was modifiedlldb/source/Plugins/ExpressionParser/Clang/ClangASTSource.h
Commit 49406fa9f46214c22489c60099d03a0c307cb460 by llvm-dev
Fix uninitialized variable warning. NFC.
The file was modifiedllvm/unittests/tools/llvm-cfi-verify/FileAnalysis.cpp
Commit 9976287219cd05ec02770c22b68344b431d2e3b1 by llvm-dev
llvm-rc - fix uninitialized variable warnings. NFC.
The file was modifiedllvm/tools/llvm-rc/ResourceFileWriter.h
The file was modifiedllvm/tools/llvm-rc/ResourceScriptToken.cpp
Commit 7207dae5c7f205c551036362c8b9872afbd94d58 by llvm-dev
Fix uninitialized variable warning. NFC.
The file was modifiedllvm/unittests/Support/ThreadPool.cpp
Commit ae31c7299ba60f909f718d6cc8a2b4114d506127 by llvm-dev
DwarfGenerator - fix uninitialized variable warnings. NFC.
The file was modifiedllvm/unittests/DebugInfo/DWARF/DwarfGenerator.cpp
Commit c070a27acc474a2e4a159d8797d4506bcbe71a30 by llvm-dev
Revert rGc0f6ad7d1f3c : "DWARF location lists: Add section index
dumping"
This reverts commit c0f6ad7d1f3ccb9d0b9ce9ef8dfa06409ccf1b3e to fix the
buildbots.
The file was modifiedllvm/test/CodeGen/X86/debug-loclists.ll
The file was modifiedllvm/test/DebugInfo/Mips/dsr-fixed-objects.ll
The file was modifiedllvm/test/DebugInfo/X86/dbg-value-frame-index.ll
The file was modifiedllvm/test/DebugInfo/X86/DW_AT_location-reference.ll
The file was modifiedllvm/lib/DebugInfo/DWARF/DWARFDie.cpp
The file was modifiedllvm/test/DebugInfo/X86/debug-loc-offset.mir
The file was modifiedllvm/test/DebugInfo/X86/dbg-value-regmask-clobber.ll
The file was modifiedllvm/lib/DebugInfo/DWARF/DWARFDebugLoc.cpp
The file was modifiedllvm/include/llvm/DebugInfo/DWARF/DWARFAddressRange.h
The file was modifiedllvm/test/DebugInfo/X86/debug-loc-frame.ll
The file was modifiedllvm/lib/DebugInfo/DWARF/DWARFContext.cpp
The file was modifiedllvm/test/DebugInfo/ARM/PR26163.ll
The file was modifiedllvm/lib/DebugInfo/DWARF/DWARFAddressRange.cpp
Commit 2b8115b10b03013b9f8ae0aa56b0cd6a6a6dd4fd by protze
[OpenMP] Add implementation and tests of Archer tool
The tool provides TSAN annotations for OpenMP synchronization. The tool
is activated if no other OMPT tool is loaded.
The tool detects whether the application was built with TSan and rejects
activation according to the OMPT protocol if there is no TSan-rt.
Differential Revision: https://reviews.llvm.org/D45890
The file was addedopenmp/tools/archer/ompt-tsan.cpp
The file was addedopenmp/tools/archer/tests/worksharing/ordered.c
The file was modifiedopenmp/runtime/CMakeLists.txt
The file was addedopenmp/tools/archer/tests/task/task-taskwait.c
The file was modifiedopenmp/CMakeLists.txt
The file was addedopenmp/tools/archer/tests/task/task-taskgroup-nested.c
The file was addedopenmp/tools/archer/tests/task/task-barrier.c
The file was addedopenmp/tools/archer/tests/races/lock-unrelated.c
The file was addedopenmp/tools/archer/tests/task/task-dependency.c
The file was addedopenmp/tools/archer/tests/task/task-taskwait-nested.c
The file was addedopenmp/tools/archer/tests/ompt/ompt-signal.h
The file was addedopenmp/tools/archer/tests/deflake.bash
The file was addedopenmp/tools/archer/tests/races/task-taskwait-nested.c
The file was addedopenmp/tools/archer/tests/CMakeLists.txt
The file was addedopenmp/tools/archer/tests/parallel/parallel-firstprivate.c
The file was modifiedopenmp/runtime/src/CMakeLists.txt
The file was addedopenmp/tools/archer/tests/lit.site.cfg.in
The file was addedopenmp/tools/archer/tests/races/task-dependency.c
The file was addedopenmp/tools/archer/tests/task/task-create.c
The file was addedopenmp/tools/archer/tests/critical/lock.c
The file was addedopenmp/tools/archer/tests/task/task-taskgroup.c
The file was addedopenmp/tools/archer/README.md
The file was addedopenmp/tools/archer/tests/races/lock-nested-unrelated.c
The file was addedopenmp/tools/archer/tests/parallel/parallel-simple.c
The file was addedopenmp/tools/archer/tests/races/task-taskgroup-unrelated.c
The file was addedopenmp/tools/archer/tests/reduction/parallel-reduction.c
The file was addedopenmp/tools/archer/tests/races/parallel-simple.c
The file was addedopenmp/tools/archer/tests/critical/critical.c
The file was addedopenmp/tools/CMakeLists.txt
The file was addedopenmp/tools/archer/tests/races/critical-unrelated.c
The file was addedopenmp/tools/archer/CMakeLists.txt
The file was modifiedopenmp/runtime/src/ompt-general.cpp
The file was addedopenmp/tools/archer/tests/races/task-two.c
The file was addedopenmp/tools/archer/tests/lit.cfg
The file was addedopenmp/tools/archer/tests/parallel/parallel-simple2.c
The file was addedopenmp/tools/archer/tests/reduction/parallel-reduction-nowait.c
The file was addedopenmp/tools/archer/tests/critical/lock-nested.c
The file was addedopenmp/tools/archer/tests/barrier/barrier.c
Commit b462cdff05b82071190e8bfd1078a2c76933b19b by emaste
Avoid duplicate exe_path definition on recent FreeBSD
The file was modifiedllvm/lib/Support/Unix/Path.inc
Commit 606c189215d1c78681e8020b6393019b0c0ea181 by llvm-dev
llvm-objcopy  - fix uninitialized variable warnings. NFC.
The file was modifiedllvm/tools/llvm-objcopy/COFF/Object.h
The file was modifiedllvm/tools/llvm-objcopy/ELF/Object.h
Commit 5edf964fccfae77353ef944bf749a8e2a1f5380e by llvm-dev
Fix cppcheck shadow variable warning. NFC.
The file was modifiedllvm/tools/llvm-objcopy/ELF/Object.cpp
Commit f21b2d8e42f87ad6958599a385ed7bbc4df86de6 by hokein.wu
[clangd] Fix diagnostic warnings in the RenameTests, NFC.
The file was modifiedclang-tools-extra/clangd/unittests/RenameTests.cpp
Commit 8c8c941844080625fd2989bd4045cdd5db4bb908 by llvm-dev
Remove useless param tag to fix Wdocumentation warning. NFCI.
The file was modifiedclang/include/clang/Tooling/DependencyScanning/DependencyScanningTool.h
Commit 10b851434324f82e9ad11d39f501f2d8b921642a by Raphael Isemann
[lldb] Fix JSON parser to allow empty arrays
Summary: Bugzilla: https://bugs.llvm.org/show_bug.cgi?id=39405
``` alexc@kitty:~/work/wiredtiger/build_posix$ cat breakpoint.json
[{"Breakpoint" : {"BKPTOptions" : {"AutoContinue" :
false,"ConditionText" : "","EnabledState" : true,"IgnoreCount" :
0,"OneShotState" : false},"BKPTResolver" : {"Options" : {"NameMask" :
[56],"Offset" : 0,"SkipPrologue" : true,"SymbolNames" :
["__wt_btcur_search"]},"Type" : "SymbolName"},"Hardware" :
false,"SearchFilter" : {"Options" : {},"Type" : "Unconstrained","Foo" :
[]}}}]
```
**Before**
```
(lldb) breakpoint read --file breakpoint.json error: Invalid JSON from
input file: /home/alexc/work/wiredtiger/build_posix/breakpoint.json.
```
**After**
```
(lldb) breakpoint read --file breakpoint.json New breakpoints:
Breakpoint 1: where = libwiredtiger-3.2.2.so`__wt_btcur_search + 15 at
bt_cursor.c:522:5, address = 0x00007ffff576ab2f
```
Reviewers: xbolva00, davide, labath
Reviewed By: davide, labath
Subscribers: mgorny, jingham, labath, davide, JDevlieghere, lldb-commits
Tags: #llvm, #lldb
Differential Revision: https://reviews.llvm.org/D68179
The file was modifiedlldb/tools/debugserver/source/JSON.cpp
The file was addedlldb/unittests/debugserver/JSONTest.cpp
The file was modifiedlldb/unittests/debugserver/CMakeLists.txt
The file was modifiedlldb/tools/debugserver/source/JSON.h
Commit b622ff39c0c482494a7400ac0256b543025cd449 by hokein.wu
[clangd] Fix some clang-tidy warnings on SourceCodeTests.cpp, NFC.
The file was modifiedclang-tools-extra/clangd/unittests/SourceCodeTests.cpp
Commit edd9f701638e28c4419658c1daed25ea0c6e8841 by dmitry.preobrazhensky
[AMDGPU][MC][GFX10] Enabled v_movrel*[sdwa|dpp|dpp8] opcodes
See https://bugs.llvm.org/show_bug.cgi?id=43712
Reviewers: arsenm, rampitec
Differential Revision: https://reviews.llvm.org/D70170
The file was modifiedllvm/test/MC/AMDGPU/gfx10_asm_dpp16.s
The file was modifiedllvm/lib/Target/AMDGPU/AsmParser/AMDGPUAsmParser.cpp
The file was modifiedllvm/lib/Target/AMDGPU/VOP1Instructions.td
The file was modifiedllvm/test/MC/Disassembler/AMDGPU/gfx10_dasm_dpp8.txt
The file was modifiedllvm/test/MC/Disassembler/AMDGPU/gfx10_dasm_all.txt
The file was modifiedllvm/test/MC/AMDGPU/gfx10_asm_all.s
The file was modifiedllvm/test/MC/AMDGPU/gfx10_asm_dpp8.s
The file was modifiedllvm/test/MC/Disassembler/AMDGPU/gfx10_dasm_dpp16.txt
Commit dca2b36ba097085663ae8473f01f0353c33f7ff0 by pavel
Re-commit "DWARF location lists: Add section index dumping"
This reapplies c0f6ad7d1f3ccb9d0b9ce9ef8dfa06409ccf1b3e with an
additional fix in test/DebugInfo/X86/constant-loclist.ll, which had a
slightly different output on windows targets. The test now accounts for
this difference.
The original commit message follows.
Summary: As discussed in D70081, this adds the ability to dump section
names/indices to the location list dumper. It does this by moving the
range specific logic from DWARFDie.cpp:dumpRanges into the
DWARFAddressRange class.
The trickiest part of this patch is the backflip in the meanings of the
two dump flags for the location list sections.
The dumping of "raw" location list data is now controlled by
"DisplayRawContents" flag. This frees up the "Verbose" flag to be used
to control whether we print the section index. Additionally, the
DisplayRawContents flag is set for section-based dumps whenever the
--verbose option is passed, but this is not done for the "inline" dumps.
Also note that the index dumping currently does not work for the DWARF
v5 location lists, as the parser does not fill out the appropriate
fields. This will be done in a separate patch.
Reviewers: dblaikie, probinson, JDevlieghere, SouraVX
Subscribers: sdardis, hiraditya, jrtc27, atanasyan, arphaman, aprantl,
llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D70227
The file was modifiedllvm/test/DebugInfo/X86/DW_AT_location-reference.ll
The file was modifiedllvm/lib/DebugInfo/DWARF/DWARFDebugLoc.cpp
The file was modifiedllvm/test/DebugInfo/ARM/PR26163.ll
The file was modifiedllvm/lib/DebugInfo/DWARF/DWARFDie.cpp
The file was modifiedllvm/test/DebugInfo/Mips/dsr-fixed-objects.ll
The file was modifiedllvm/test/DebugInfo/X86/dbg-value-frame-index.ll
The file was modifiedllvm/test/CodeGen/X86/debug-loclists.ll
The file was modifiedllvm/test/DebugInfo/X86/dbg-value-regmask-clobber.ll
The file was modifiedllvm/include/llvm/DebugInfo/DWARF/DWARFAddressRange.h
The file was modifiedllvm/test/DebugInfo/X86/debug-loc-frame.ll
The file was modifiedllvm/lib/DebugInfo/DWARF/DWARFAddressRange.cpp
The file was modifiedllvm/lib/DebugInfo/DWARF/DWARFContext.cpp
The file was modifiedllvm/test/DebugInfo/X86/constant-loclist.ll
The file was modifiedllvm/test/DebugInfo/X86/debug-loc-offset.mir
Commit dea8f3b0a4eabb930f605343ff5e3e39a1791f86 by Tim Northover
arm64_32: support function return in FastISel.
The file was modifiedllvm/test/CodeGen/AArch64/arm64_32-fastisel.ll
The file was modifiedllvm/lib/Target/AArch64/AArch64FastISel.cpp
The file was modifiedllvm/test/CodeGen/AArch64/arm64_32.ll
Commit d27a16eb392f39f9ee04ff5194b1eff3e189e6f8 by sam.mccall
Revert "[DWARF5]Addition of alignment atrribute in typedef DIE."
This reverts commit 423f541c1a322963cf482683fe9777ef0692082d, which
breaks llvm-c ABI.
The file was modifiedllvm/lib/IR/DebugInfo.cpp
The file was modifiedllvm/lib/CodeGen/AsmPrinter/DwarfUnit.cpp
The file was removedclang/test/CodeGenCXX/debug-info-template-align.cpp
The file was modifiedclang/lib/CodeGen/CGDebugInfo.cpp
The file was modifiedllvm/include/llvm/IR/DIBuilder.h
The file was modifiedllvm/include/llvm-c/DebugInfo.h
The file was removedllvm/test/DebugInfo/X86/debug-info-template-align.ll
The file was modifiedllvm/tools/llvm-c-test/debuginfo.c
The file was modifiedllvm/lib/IR/DIBuilder.cpp
Commit aea7578fade2563cb5ea60548914667b515c457a by russell.gallop
[NFC] Fix test reserve_global_reg.ll after 2d739f9
The file was modifiedllvm/test/Feature/reserve_global_reg.ll
Commit 4f80fc2491cc35730a9a84b86975278b7daa8522 by hokein.wu
[clangd] Implement rename by using SelectionTree and
findExplicitReferences.
Summary: With the new implemenation, we will have better coverage of
various AST nodes, and fix some known/potential bugs.
Also added the existing clang-renamae tests. Known changed behavior:
- "~Fo^o()" will not trigger the rename, will fix afterwards
- references in macro bodies are not renamed now
This fixes:
- https://github.com/clangd/clangd/issues/167
- https://github.com/clangd/clangd/issues/169
- https://github.com/clangd/clangd/issues/171
Reviewers: ilya-biryukov
Subscribers: MaskRay, jkorous, arphaman, kadircet, usaxena95,
cfe-commits
Tags: #clang
Differential Revision: https://reviews.llvm.org/D69934
The file was modifiedclang-tools-extra/clangd/unittests/RenameTests.cpp
The file was modifiedclang-tools-extra/clangd/refactor/Rename.cpp
Commit fa541860564ba3a82bf085613ebc1376f641e966 by pavel
[NFC] Clean up debug-names-verify-completeness.s test
This patch replaces the tabs by spaces and avoid the need for a
debug_str section by moving all strings inline. It also removes the
hardcoded DIE offsets in the test, which will simplify a follow-up
patch.
The file was modifiedllvm/test/tools/llvm-dwarfdump/X86/debug-names-verify-completeness.s
Commit 2054ed052f15b584e1bce57c8f765991eab2da7d by usx
[clangd] Store xref for Macros in ParsedAST.
This patch adds the cross references for Macros in the MainFile. We add
references for the main file to the ParsedAST. We query the references
from it using the SymbolID. Xref outside main file will be added to the
index in a separate patch.
The file was modifiedclang-tools-extra/clangd/SemanticHighlighting.cpp
The file was modifiedclang-tools-extra/clangd/XRefs.cpp
The file was addedclang-tools-extra/clangd/unittests/CollectMacrosTests.cpp
The file was modifiedclang-tools-extra/clangd/unittests/ParsedASTTests.cpp
The file was modifiedclang-tools-extra/clangd/unittests/CMakeLists.txt
The file was modifiedclang-tools-extra/clangd/CollectMacros.h
Commit 7e45b5864f1881ba0e6ca45286a746979b56b17c by llvmgnsyncbot
gn build: Merge 2054ed052f1
The file was modifiedllvm/utils/gn/secondary/clang-tools-extra/clangd/unittests/BUILD.gn
Commit b0567be2b48a8f55e8fe747bd21f24745f9bf9c9 by julian.lettner
[ASan] Mark test as UNSUPPORTED for iOS simulator
coverage-fork.cpp uses `fork()` which requires additional permissions in
the iOS simulator sandbox.  We cannot use `sandbox-exec` to grant these
permissions since this is a Posix (not Darwin) test.
The file was modifiedcompiler-rt/test/asan/TestCases/Posix/coverage-fork.cpp
Commit c3eded068c64bfe614d25359927a2917ff8e4a35 by a.bataev
[OPENMP50]Fix PR44024: runtime assert in distribute construct.
If the code is emitted for distribute construct, the nonmonotonic
modifier should not be added.
The file was modifiedclang/lib/CodeGen/CGOpenMPRuntime.cpp
The file was modifiedclang/test/OpenMP/distribute_codegen.cpp
Commit 015b2e699f0c7205564e51dd73a0d619571640bf by francesco.petrogalli
[dwarfgen] Fix initialization order error. [NFCI]
This commit fixes the `-Werror=reorder` builds.
The file was modifiedllvm/unittests/DebugInfo/DWARF/DwarfGenerator.cpp
Commit c85fa79d3663ecb3117e178b2a79ffa721d18e32 by jdenny.ornl
[Attr] Fix `-ast-print` for `asm` attribute
Without this fix, the tests introduced here produce the following assert
fail:
``` clang:
/home/jdenny/llvm/clang/include/clang/Basic/AttributeCommonInfo.h:163:
unsigned int clang::AttributeCommonInfo::getAttributeSpellingListIndex()
const: Assertion `(isAttributeSpellingListCalculated() || AttrName) &&
"Spelling cannot be found"' failed.
```
The bug was introduced by D67368, which caused `AsmLabelAttr`'s spelling
index to be set to `SpellingNotCalculated`.
Reviewed By: aaron.ballman
Differential Revision: https://reviews.llvm.org/D70349
The file was modifiedclang/lib/Sema/SemaDecl.cpp
The file was modifiedclang/test/AST/ast-print-attr.c
Commit 63f0f54c89fba0dec12d4e169313d4b527348b52 by maskray
[yaml2obj][test] Move tests to binary format specific subdirectories
Create COFF/, ELF/, and Minidump and move tests there.
Also
* Rename `*.test` to `*.yaml`
* For yaml2obj RUN lines, use `-o %t` instead of `> %t` for consistency.
We still have tests that check stdout is the default output, e.g.
multi-doc.test
* Update tests to consistently use `##` for comments.
`#` is for RUN and CHECK lines.
* Merge symboless-relocation.yaml and invalid-symboless-relocation.yaml
to ELF/relocation-implicit-symbol-index.test
Reviewed By: grimar, jhenderson
Differential Revision: https://reviews.llvm.org/D70264
The file was removedllvm/test/tools/yaml2obj/elf-sht-symtab-shndx.yaml
The file was addedllvm/test/tools/yaml2obj/ELF/override-shname.yaml
The file was addedllvm/test/tools/yaml2obj/ELF/symbol-index.yaml
The file was addedllvm/test/tools/yaml2obj/ELF/program-header-align.yaml
The file was addedllvm/test/tools/yaml2obj/ELF/section-ordering.yaml
The file was removedllvm/test/tools/yaml2obj/explicit-dynsym-no-dynstr.yaml
The file was removedllvm/test/tools/yaml2obj/symbol-index-invalid.yaml
The file was addedllvm/test/tools/yaml2obj/ELF/symbol-name.yaml
The file was addedllvm/test/tools/yaml2obj/COFF/symbol-index.yaml
The file was addedllvm/test/tools/yaml2obj/ELF/comdat-broken.yaml
The file was removedllvm/test/tools/yaml2obj/duplicate-symbol-names.test
The file was addedllvm/test/tools/yaml2obj/ELF/explicit-dynsym-no-dynstr.yaml
The file was addedllvm/test/tools/yaml2obj/Minidump/exception-missing-parameter.yaml
The file was removedllvm/test/tools/yaml2obj/elf-gnu-hash-section.yaml
The file was addedllvm/test/tools/yaml2obj/ELF/sht-symtab-shndx.yaml
The file was removedllvm/test/tools/yaml2obj/elf-symbol-binding.yaml
The file was removedllvm/test/tools/yaml2obj/minidump-exception-missing-parameter.yaml
The file was removedllvm/test/tools/yaml2obj/elf-comdat-broken.yaml
The file was removedllvm/test/tools/yaml2obj/reloc-sec-info.yaml
The file was addedllvm/test/tools/yaml2obj/ELF/llvm-addrsig-section.yaml
The file was addedllvm/test/tools/yaml2obj/ELF/reloc-sec-info.yaml
The file was addedllvm/test/tools/yaml2obj/ELF/no-phdrs.yaml
The file was removedllvm/test/tools/yaml2obj/elf-override-shoffset.yaml
The file was addedllvm/test/tools/yaml2obj/ELF/comdat-broken-members.yaml
The file was addedllvm/test/tools/yaml2obj/ELF/relocation-explicit-symbol-index.yaml
The file was removedllvm/test/tools/yaml2obj/section-size-content.yaml
The file was addedllvm/test/tools/yaml2obj/Minidump/systeminfo-other-long.yaml
The file was removedllvm/test/tools/yaml2obj/elf-symbol-stother.yaml
The file was removedllvm/test/tools/yaml2obj/symbol-type.yaml
The file was addedllvm/test/tools/yaml2obj/ELF/symtab-implicit-sections-flags.yaml
The file was addedllvm/test/tools/yaml2obj/ELF/relocation-implicit-symbol-index.yaml
The file was addedllvm/test/tools/yaml2obj/ELF/versym-section.yaml
The file was addedllvm/test/tools/yaml2obj/ELF/ent-size.yaml
The file was removedllvm/test/tools/yaml2obj/elf-symbols-binding-order.yaml
The file was addedllvm/test/tools/yaml2obj/ELF/dynsymtab-shlink.yaml
The file was removedllvm/test/tools/yaml2obj/elf-header-elfdatanone.yaml
The file was addedllvm/test/tools/yaml2obj/ELF/header-sh-fields.yaml
The file was addedllvm/test/tools/yaml2obj/ELF/dynamic-section.yaml
The file was addedllvm/test/tools/yaml2obj/ELF/empty-symbols.yaml
The file was removedllvm/test/tools/yaml2obj/elf-custom-null-section.yaml
The file was addedllvm/test/tools/yaml2obj/ELF/strtab-implicit-sections-size-content.yaml
The file was removedllvm/test/tools/yaml2obj/coff-symbol-index.yaml
The file was addedllvm/test/tools/yaml2obj/ELF/implicit-sections-addr.yaml
The file was addedllvm/test/tools/yaml2obj/ELF/strtab-implicit-sections-flags.yaml
The file was addedllvm/test/tools/yaml2obj/ELF/verneed-section.yaml
The file was removedllvm/test/tools/yaml2obj/elf-emachine.yaml
The file was addedllvm/test/tools/yaml2obj/ELF/symbol-type.yaml
The file was addedllvm/test/tools/yaml2obj/ELF/stack-sizes.yaml
The file was addedllvm/test/tools/yaml2obj/ELF/program-header.yaml
The file was addedllvm/test/tools/yaml2obj/ELF/header-elfdatanone.yaml
The file was addedllvm/test/tools/yaml2obj/ELF/local-symbols.yaml
The file was removedllvm/test/tools/yaml2obj/implicit-sections-info.yaml
The file was addedllvm/test/tools/yaml2obj/ELF/verdef-section.yaml
The file was removedllvm/test/tools/yaml2obj/elf-class-endianness.test
The file was addedllvm/test/tools/yaml2obj/ELF/override-shsize.yaml
The file was addedllvm/test/tools/yaml2obj/ELF/class-endianness.yaml
The file was removedllvm/test/tools/yaml2obj/relocation-explicit-symbol-index.yaml
The file was removedllvm/test/tools/yaml2obj/elf-symbol-visibility.yaml
The file was addedllvm/test/tools/yaml2obj/ELF/abiversion.yaml
The file was removedllvm/test/tools/yaml2obj/elf-llvm-addrsig-section.yaml
The file was addedllvm/test/tools/yaml2obj/ELF/custom-fill.yaml
The file was removedllvm/test/tools/yaml2obj/local-symbols.yaml
The file was removedllvm/test/tools/yaml2obj/linker-options.yaml
The file was removedllvm/test/tools/yaml2obj/invalid-docnum.test
The file was addedllvm/test/tools/yaml2obj/COFF/invalid-alignment.yaml
The file was removedllvm/test/tools/yaml2obj/implicit-sections.test
The file was addedllvm/test/tools/yaml2obj/ELF/program-header-nobits.yaml
The file was removedllvm/test/tools/yaml2obj/elf-stack-sizes.yaml
The file was removedllvm/test/tools/yaml2obj/minidump-systeminfo-x86-long.yaml
The file was removedllvm/test/tools/yaml2obj/coff-arm64.yaml
The file was removedllvm/test/tools/yaml2obj/program-header-align.yaml
The file was addedllvm/test/tools/yaml2obj/ELF/duplicate-section-names.yaml
The file was addedllvm/test/tools/yaml2obj/ELF/symbol-visibility.yaml
The file was removedllvm/test/tools/yaml2obj/symbol-index.yaml
The file was removedllvm/test/tools/yaml2obj/elf-comdat-broken-members.yaml
The file was addedllvm/test/tools/yaml2obj/ELF/symtab-shinfo.yaml
The file was removedllvm/test/tools/yaml2obj/dynamic-relocations.yaml
The file was removedllvm/test/tools/yaml2obj/duplicate-section-names.test
The file was addedllvm/test/tools/yaml2obj/ELF/symbol-stother.yaml
The file was removedllvm/test/tools/yaml2obj/elf-override-shsize.yaml
The file was addedllvm/test/tools/yaml2obj/ELF/section-type.yaml
The file was addedllvm/test/tools/yaml2obj/ELF/symtab-implicit-sections-size-content.yaml
The file was removedllvm/test/tools/yaml2obj/elf-no-phdrs.yaml
The file was removedllvm/test/tools/yaml2obj/minidump-raw-stream-small-size.yaml
The file was addedllvm/test/tools/yaml2obj/ELF/symbols-binding-order.yaml
The file was removedllvm/test/tools/yaml2obj/minidump-systeminfo-x86-short.yaml
The file was removedllvm/test/tools/yaml2obj/elf-gnu-unique-symbols.yaml
The file was addedllvm/test/tools/yaml2obj/ELF/section-size-content.yaml
The file was removedllvm/test/tools/yaml2obj/symbol-name.yaml
The file was removedllvm/test/tools/yaml2obj/verneed-section.yaml
The file was removedllvm/test/tools/yaml2obj/implicit-sections-types.test
The file was addedllvm/test/tools/yaml2obj/ELF/linker-options.yaml
The file was removedllvm/test/tools/yaml2obj/dynamic-section.yaml
The file was addedllvm/test/tools/yaml2obj/ELF/implicit-sections-types.yaml
The file was removedllvm/test/tools/yaml2obj/unnamed-section.yaml
The file was removedllvm/test/tools/yaml2obj/symboless-relocation.yaml
The file was removedllvm/test/tools/yaml2obj/dynamic-section-raw-content.yaml
The file was addedllvm/test/tools/yaml2obj/ELF/symtab-shtype.yaml
The file was removedllvm/test/tools/yaml2obj/section-type.yaml
The file was addedllvm/test/tools/yaml2obj/multi-doc.yaml
The file was addedllvm/test/tools/yaml2obj/ELF/gnu-unique-symbols.yaml
The file was removedllvm/test/tools/yaml2obj/dynamic-symbols.yaml
The file was addedllvm/test/tools/yaml2obj/ELF/implicit-sections.yaml
The file was removedllvm/test/tools/yaml2obj/minidump-systeminfo-other-not-hex.yaml
The file was removedllvm/test/tools/yaml2obj/relocation-unsupported-machine.yaml
The file was addedllvm/test/tools/yaml2obj/ELF/comdat-broken-info.yaml
The file was addedllvm/test/tools/yaml2obj/invalid-output-file.yaml
The file was removedllvm/test/tools/yaml2obj/dynsymtab-implicit-sections-size-content.yaml
The file was addedllvm/test/tools/yaml2obj/ELF/symtab-shlink.yaml
The file was removedllvm/test/tools/yaml2obj/invalid_output_file.test
The file was removedllvm/test/tools/yaml2obj/elf-symtab-shtype.yaml
The file was removedllvm/test/tools/yaml2obj/versym-section.yaml
The file was addedllvm/test/tools/yaml2obj/COFF/basic-arm64.yaml
The file was removedllvm/test/tools/yaml2obj/elf-hash-section.yaml
The file was addedllvm/test/tools/yaml2obj/ELF/sh-addralign.yaml
The file was addedllvm/test/tools/yaml2obj/Minidump/raw-stream-small-size.yaml
The file was addedllvm/test/tools/yaml2obj/Minidump/systeminfo-x86-long.yaml
The file was addedllvm/test/tools/yaml2obj/ELF/symbol-index-invalid.yaml
The file was addedllvm/test/tools/yaml2obj/ELF/program-header-size-offset.yaml
The file was addedllvm/test/tools/yaml2obj/ELF/override-shoffset.yaml
The file was removedllvm/test/tools/yaml2obj/dynamic-section-i386.test
The file was removedllvm/test/tools/yaml2obj/coff-invalid-alignment.test
The file was removedllvm/test/tools/yaml2obj/program-header-size-offset.yaml
The file was addedllvm/test/tools/yaml2obj/ELF/symbol-binding.yaml
The file was removedllvm/test/tools/yaml2obj/strtab-implicit-sections-size-content.yaml
The file was addedllvm/test/tools/yaml2obj/ELF/duplicate-symbol-names.yaml
The file was addedllvm/test/tools/yaml2obj/ELF/custom-null-section.yaml
The file was addedllvm/test/tools/yaml2obj/ELF/invalid-docnum.yaml
The file was removedllvm/test/tools/yaml2obj/verdef-section.yaml
The file was removedllvm/test/tools/yaml2obj/elf-header-sh-fields.yaml
The file was removedllvm/test/tools/yaml2obj/section-link.yaml
The file was addedllvm/test/tools/yaml2obj/ELF/section-link.yaml
The file was addedllvm/test/tools/yaml2obj/ELF/implicit-sections-info.yaml
The file was removedllvm/test/tools/yaml2obj/minidump-systeminfo-other-short.yaml
The file was removedllvm/test/tools/yaml2obj/program-header-nobits.yaml
The file was removedllvm/test/tools/yaml2obj/empty-symbols.yaml
The file was removedllvm/test/tools/yaml2obj/elf-comdat-broken-info.yaml
The file was removedllvm/test/tools/yaml2obj/symtab-shlink.yaml
The file was addedllvm/test/tools/yaml2obj/ELF/dynamic-symbols.yaml
The file was removedllvm/test/tools/yaml2obj/program-header.yaml
The file was removedllvm/test/tools/yaml2obj/multi-doc.test
The file was removedllvm/test/tools/yaml2obj/implicit-sections-addr.yaml
The file was removedllvm/test/tools/yaml2obj/symtab-implicit-sections-flags.yaml
The file was addedllvm/test/tools/yaml2obj/Minidump/systeminfo-other-short.yaml
The file was removedllvm/test/tools/yaml2obj/dynsymtab-shlink.yaml
The file was removedllvm/test/tools/yaml2obj/elf-sh-addralign.yaml
The file was addedllvm/test/tools/yaml2obj/ELF/hash-section.yaml
The file was removedllvm/test/tools/yaml2obj/elf-abiversion.yaml
The file was removedllvm/test/tools/yaml2obj/elf-symtab-shinfo.yaml
The file was removedllvm/test/tools/yaml2obj/elf-ent-size.yaml
The file was addedllvm/test/tools/yaml2obj/ELF/dynsymtab-implicit-sections-size-content.yaml
The file was addedllvm/test/tools/yaml2obj/Minidump/systeminfo-x86-short.yaml
The file was addedllvm/test/tools/yaml2obj/ELF/dynamic-section-raw-content.yaml
The file was removedllvm/test/tools/yaml2obj/elf-override-shname.yaml
The file was addedllvm/test/tools/yaml2obj/ELF/dynamic-section-i386.yaml
The file was addedllvm/test/tools/yaml2obj/Minidump/systeminfo-other-not-hex.yaml
The file was removedllvm/test/tools/yaml2obj/section-ordering.yaml
The file was removedllvm/test/tools/yaml2obj/strtab-implicit-sections-flags.yaml
The file was addedllvm/test/tools/yaml2obj/ELF/relocation-unsupported-machine.yaml
The file was removedllvm/test/tools/yaml2obj/minidump-systeminfo-other-long.yaml
The file was removedllvm/test/tools/yaml2obj/invalid-symboless-relocation.yaml
The file was addedllvm/test/tools/yaml2obj/ELF/relocation-missing-symbol.yaml
The file was removedllvm/test/tools/yaml2obj/symtab-implicit-sections-size-content.yaml
The file was addedllvm/test/tools/yaml2obj/ELF/emachine.yaml
The file was removedllvm/test/tools/yaml2obj/custom-fill.yaml
The file was removedllvm/test/tools/yaml2obj/relocation-missing-symbol.yaml
The file was addedllvm/test/tools/yaml2obj/ELF/section-unnamed.yaml
The file was addedllvm/test/tools/yaml2obj/ELF/dynamic-relocations.yaml
The file was addedllvm/test/tools/yaml2obj/ELF/gnu-hash-section.yaml
Commit 0aed648649775bfe29b01f7ad9b072f92df7c448 by Jonas Devlieghere
[Docs] Add Python caveats under the development section
This adds a page named Caveats with a section on some of the things to
be aware of related to Python. It's a question we've seen more than once
pop up and I think it's good to have it documentation on the website.
Even though some of it might be useful to users, I still put it under
"development" because it requires some understanding of how LLDB is
built.
Differential revision: https://reviews.llvm.org/D70252
The file was modifiedlldb/docs/resources/build.rst
The file was modifiedlldb/docs/index.rst
The file was addedlldb/docs/resources/caveats.rst
Commit b87fc09dceeff9cb838884961d817c0ab0257176 by julian.lettner
Bump sanitizer macOS deployment target to 10.10
Bump default value for `SANITIZER_MIN_OSX_VERSION` to 10.10 (from 10.9).
TSan does not work on macOS 10.9 and a nice error message is preferable
to an "unreferenced symbol" error when loading the TSan runtime.
We could try to only bump the deployment target for TSan, but we would
have to invest into adding support for this to our CMake build and it
does not seem worth it.  macOS 10.10 was released in 2014.
rdar://31335781
The file was modifiedcompiler-rt/cmake/config-ix.cmake
Commit 4d4066a52013768118f736bc6582c2c43c780507 by julian.lettner
Bump sanitizer iOS deployment target to 9.0
Bump default value for `-miphoneos-version-min=x` to 9.0 (from 8.0).
TSan tests that use thread local storage `__thread` (e.g., tls_race.cpp)
are failing to link for the iOS simulator (arch=x86_64 and
-miphoneos-version-min=8.0) on internal/master (will be submitted to
Glacier train):
``` ld: targeted OS version does not support use of thread local
variables in _main for architecture x86_64
```
iOS 9.0 was released 2015.
The file was modifiedcompiler-rt/cmake/config-ix.cmake
Commit 7e4d386b77f982b260156fc6016ea9c33f466e0b by julian.lettner
[cmake] Factor out DEFAULT_SANITIZER_MIN_OSX_VERSION
The file was modifiedcompiler-rt/cmake/config-ix.cmake
Commit d4f18f11d372bd02127424ae6a8f8a30f77a0426 by Adrian Prantl
Replace bitfield in lldb::Type with byte-sized members. (NFC)
Due to alginment and packing using separate members takes up the same
amount of space, but makes it far less cumbersome to deal with it in
constructors etc.
The file was modifiedlldb/include/lldb/Symbol/Type.h
The file was modifiedlldb/source/Plugins/SymbolFile/PDB/PDBASTParser.cpp
The file was modifiedlldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserClang.cpp
The file was modifiedlldb/source/Symbol/Type.cpp
The file was modifiedlldb/source/Plugins/SymbolFile/NativePDB/SymbolFileNativePDB.cpp
Commit 17e37ba57a696198c9744eeba4f8f293f155587a by michael.hliao
Fix shared lib build.
The file was modifiedlld/lib/Core/CMakeLists.txt
The file was modifiedlld/lib/ReaderWriter/CMakeLists.txt
Commit 5a4a05d776d3adacad344b2b5e15cf594c906bce by jonathanchesterfield
[libomptarget][nfc] Move some source into common from nvptx
Summary:
[libomptarget][nfc] Move some source into common from nvptx
Moves some source that compiles cleanly under amdgcn into a common
subdirectory Includes some non-trivial files and some headers. Keeps the
cuda file extension.
The build systems for different architectures seem unlikely to have much
in common. The idea is therefore to set include paths such that files
under common/src compile as if they were under arch/src as the mechanism
for sharing. In particular, files under common/src need to be able to
include target_impl.h.
The corresponding -Icommon is left out in favour of explicit includes on
the basis that the it makes it clearer which files under common are used
by a given architecture.
Reviewers: jdoerfert, ABataev, grokos
Reviewed By: ABataev
Subscribers: jfb, mgorny, openmp-commits
Tags: #openmp
Differential Revision: https://reviews.llvm.org/D70328
The file was removedopenmp/libomptarget/deviceRTLs/nvptx/src/cancel.cu
The file was removedopenmp/libomptarget/deviceRTLs/nvptx/src/task.cu
The file was addedopenmp/libomptarget/deviceRTLs/common/state-queuei.h
The file was modifiedopenmp/libomptarget/deviceRTLs/nvptx/src/omptarget-nvptx.h
The file was addedopenmp/libomptarget/deviceRTLs/common/src/cancel.cu
The file was addedopenmp/libomptarget/deviceRTLs/common/state-queue.h
The file was addedopenmp/libomptarget/deviceRTLs/common/src/loop.cu
The file was addedopenmp/libomptarget/deviceRTLs/common/src/critical.cu
The file was removedopenmp/libomptarget/deviceRTLs/nvptx/src/debug.h
The file was removedopenmp/libomptarget/deviceRTLs/nvptx/src/critical.cu
The file was removedopenmp/libomptarget/deviceRTLs/nvptx/src/state-queue.h
The file was modifiedopenmp/libomptarget/deviceRTLs/nvptx/src/support.cu
The file was removedopenmp/libomptarget/deviceRTLs/nvptx/src/loop.cu
The file was modifiedopenmp/libomptarget/deviceRTLs/nvptx/CMakeLists.txt
The file was addedopenmp/libomptarget/deviceRTLs/common/src/task.cu
The file was removedopenmp/libomptarget/deviceRTLs/nvptx/src/state-queuei.h
The file was addedopenmp/libomptarget/deviceRTLs/common/debug.h
Commit 4624e83ce7b124545b55e45ba13f2d900ed65654 by Vedant Kumar
[Signal] Allow llvm clients to opt into one-shot SIGPIPE handling
Allow clients of the llvm library to opt-in to one-shot SIGPIPE
handling, instead of forcing them to undo llvm's SIGPIPE handler
registration (which is brittle).
The current behavior is preserved for all llvm-derived tools (except
lldb) by means of a default-`true` flag in the InitLLVM constructor.
This prevents "IO error" crashes in long-lived processes (lldb is the
motivating example) which both a) load llvm as a dynamic library and b)
*really* need to ignore SIGPIPE.
As llvm signal handlers can be installed when calling into libclang
(say, via RemoveFileOnSignal), thereby overriding a previous SIG_IGN for
SIGPIPE, there is no clean way to opt-out of "exit-on-SIGPIPE" in the
current model.
Differential Revision: https://reviews.llvm.org/D70277
The file was modifiedllvm/lib/Support/Windows/Signals.inc
The file was modifiedllvm/include/llvm/Support/InitLLVM.h
The file was modifiedllvm/lib/Support/Unix/Signals.inc
The file was modifiedlldb/tools/driver/Driver.cpp
The file was modifiedlldb/tools/lldb-server/lldb-server.cpp
The file was modifiedllvm/lib/Support/InitLLVM.cpp
The file was modifiedllvm/include/llvm/Support/Signals.h
Commit 1689ad27af5c5712f42542807eb4ecdfe84c2eca by yikong
[builtins] Implement rounding mode support for i386/x86_64
Differential Revision: https://reviews.llvm.org/D69870
The file was modifiedcompiler-rt/test/builtins/Unit/addtf3_test.c
The file was modifiedcompiler-rt/test/builtins/Unit/subtf3_test.c
The file was modifiedcompiler-rt/lib/builtins/CMakeLists.txt
The file was addedcompiler-rt/lib/builtins/i386/fp_mode.c
Commit b4e2b112b58154a89171df39dae80044865ff4ff by francisvm
[Remarks][Driver] Use different remark files when targeting multiple
architectures
When the driver is targeting multiple architectures at once, for things
like Universal Mach-Os, we need to emit different remark files for each
cc1 invocation to avoid overwriting the files from a different
invocation.
For example:
$ clang -c -o foo.o -fsave-optimization-record -arch x86_64 -arch
x86_64h
will create two remark files:
* foo-x86_64.opt.yaml
* foo-x86_64h.opt.yaml
The file was modifiedclang/test/Driver/opt-record.c
The file was modifiedclang/lib/Driver/ToolChains/Clang.cpp
Commit a77b66a05625ea4271c2d76f65428cce02e4699e by rnk
Allocate builtins table earlier to fix bug found by ubsan
Follow up to 979da9a4c3ba
The file was modifiedclang/lib/Lex/Preprocessor.cpp
Commit 30e7ee3c4bac4a12ea584a879aa320bd4e035cc2 by echristo
Temporarily Revert "Add support for options -frounding-math,
ftrapping-math, -ffp-model=, and -ffp-exception-behavior=" and a
follow-up NFC rearrangement as it's causing a crash on valid. Testcase
is on the original review thread.
This reverts commits af57dbf12e54f3a8ff48534bf1078f4de104c1cd and
e6584b2b7b2de06f1e59aac41971760cac1e1b79
The file was modifiedclang/include/clang/Basic/LangOptions.def
The file was modifiedclang/test/Driver/fast-math.c
The file was modifiedllvm/unittests/IR/IRBuilderTest.cpp
The file was removedllvm/include/llvm/IR/FPEnv.h
The file was modifiedllvm/include/llvm/Target/TargetOptions.h
The file was modifiedllvm/include/llvm/IR/IntrinsicInst.h
The file was modifiedllvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
The file was modifiedllvm/lib/IR/CMakeLists.txt
The file was modifiedclang/lib/Frontend/CompilerInvocation.cpp
The file was modifiedllvm/include/llvm/IR/IRBuilder.h
The file was modifiedclang/docs/UsersManual.rst
The file was modifiedclang/lib/Driver/ToolChains/Clang.cpp
The file was removedllvm/lib/IR/FPEnv.cpp
The file was modifiedclang/include/clang/Basic/LangOptions.h
The file was modifiedclang/test/Driver/clang_f_opts.c
The file was modifiedllvm/lib/IR/IntrinsicInst.cpp
The file was removedclang/test/Driver/fp-model.c
The file was modifiedclang/lib/CodeGen/CodeGenFunction.cpp
The file was modifiedclang/lib/CodeGen/CodeGenFunction.h
The file was removedclang/test/CodeGen/fpconstrained.c
The file was modifiedclang/include/clang/Driver/Options.td
Commit 1ff5f0ced3163e457c799bd3bd838153806d6320 by rnk
Revert "[Remarks][Driver] Use different remark files when targeting
multiple architectures"
This reverts commit b4e2b112b58154a89171df39dae80044865ff4ff.
Test doesn't appear to pass on Windows, maybe all non-Mac.
The file was modifiedclang/test/Driver/opt-record.c
The file was modifiedclang/lib/Driver/ToolChains/Clang.cpp
Commit 9d93893914086738c577a4f4f1089f6a004a2261 by stefanp
[PowerPC] Test case for vector float gather on ppc64le and ppc64
Test case to verify that the expected code is generated for a vector
float gather based on the patterns in tablegen for big and little endian
cases.
Patch by: Kamau Bridgeman
Differential Revision: https://reviews.llvm.org/D69443
The file was addedllvm/test/CodeGen/PowerPC/float-vector-gather.ll
Commit e15b26fbbd901315a1402f97e83abf29bdce9a9f by francisvm
Reland: [Remarks][Driver] Use different remark files when targeting
multiple architectures
When the driver is targeting multiple architectures at once, for things
like Universal Mach-Os, we need to emit different remark files for each
cc1 invocation to avoid overwriting the files from a different
invocation.
For example:
$ clang -c -o foo.o -fsave-optimization-record -arch x86_64 -arch
x86_64h
will create two remark files:
* foo-x86_64.opt.yaml
* foo-x86_64h.opt.yaml
The file was modifiedclang/lib/Driver/ToolChains/Clang.cpp
The file was addedclang/test/Driver/darwin-opt-record.c
Commit ad5a84c883354e8bb595ebfd9971fe4a14b770fd by listmail
[LoopPred/WC] Use a dominating widenable condition to remove analyze
loop exits
This implements a version of the predicateLoopExits transform from
IndVarSimplify extended to exploit widenable conditions - and thus be
much wider in scope of legality. The code structure ends up being almost
entirely different, so I chose to duplicate this into the
LoopPredication pass instead of trying to reuse the code in the IndVars.
The core notions of the transform are as follows:
    If we have a widenable condition which controls entry into the loop,
we're allowed to widen it arbitrarily. Given that, it's simply a
*profitability* question as to what conditions to fold into the
widenable branch.
   To avoid pass ordering issues, we want to avoid widening cases that
would otherwise be dischargeable. Or... widen in a form which can still
be discharged. Thus, we phrase the transform as selecting one
analyzeable exit from the set of analyzeable exits to keep. This avoids
creating pass ordering complexities.
   Since none of the above proves that we actually exit through our
analyzeable exits - we might exit through something else entirely - we
limit ourselves to cases where a) the latch is analyzeable and b) the
latch is predicted taken, and c) the exit being removed is statically
cold.
Differential Revision: https://reviews.llvm.org/D69830
The file was addedllvm/test/Transforms/LoopPredication/predicate-exits.ll
The file was modifiedllvm/lib/Transforms/Scalar/LoopPredication.cpp
Commit 6e20d70a695028099b1705cfcfd1373d9d62e747 by craig.topper
[LegalizeDAG] Convert strict fp nodes to libcalls without losing the
chain.
Previously we mutated the node and then converted it to a libcall. But
this loses the chain information.
This patch keeps the chain, but unfortunately breaks tail call
optimization as the functions involved in deciding if a node is in tail
call position can't handle the chain. But correct ordering seems more
important to be right.
Somehow the SystemZ tests improved. I looked at one of them and it
seemed that we're handling the split vector elements in a different
order and that made the copies work better.
Differential Revision: https://reviews.llvm.org/D70334
The file was modifiedllvm/test/CodeGen/X86/fp-intrinsics-fma.ll
The file was modifiedllvm/test/CodeGen/SystemZ/vector-constrained-fp-intrinsics.ll
The file was modifiedllvm/test/CodeGen/X86/vector-constrained-fp-intrinsics.ll
The file was modifiedllvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp
The file was modifiedllvm/test/CodeGen/X86/fp-intrinsics.ll
Commit d4e1ba3fa9dfec2613bdcc7db0b58dea490c56b1 by Duncan P. N. Exon Smith
Implement __attribute__((objc_direct)),
__attribute__((objc_direct_members))
__attribute__((objc_direct)) is an attribute on methods declaration, and
__attribute__((objc_direct_members)) on implementation, categories or
extensions.
A `direct` property specifier is added (@property(direct) type name)
These attributes / specifiers cause the method to have no associated
Objective-C metadata (for the property or the method itself), and the
calling convention to be a direct C function call.
The symbol for the method has enforced hidden visibility and such direct
calls are hence unreachable cross image. An explicit C function must be
made if so desired to wrap them.
The implicit `self` and `_cmd` arguments are preserved, however to
maintain compatibility with the usual `objc_msgSend` semantics, 3
fundamental precautions are taken:
1) for instance methods, `self` is nil-checked. On arm64 backends this
  typically adds a single instruction (cbz x0, <closest-ret>) to the
  codegen, for the vast majority of the cases when the return type is a
  scalar.
2) for class methods, because the class may not be realized/initialized
  yet, a call to `[self self]` is emitted. When the proper deployment
  target is used, this is optimized to `objc_opt_self(self)`.
   However, long term we might want to emit something better that the
  optimizer can reason about. When inlining kicks in, these calls
  aren't optimized away as the optimizer has no idea that a single call
  is really necessary.
3) the calling convention for the `_cmd` argument is changed: the caller
  leaves the second argument to the call undefined, and the selector is
  loaded inside the body when it's referenced only.
As far as error reporting goes, the compiler refuses:
- making any overloads direct,
- making an overload of a direct method,
- implementations marked as direct when the declaration in the
interface isn't (the other way around is allowed, as the direct
attribute is inherited from the declaration),
- marking methods required for protocol conformance as direct,
- messaging an unqualified `id` with a direct method,
- forming any @selector() expression with only direct selectors.
As warnings:
- any inconsistency of direct-related calling convention when
@selector() or messaging is used,
- forming any @selector() expression with a possibly direct selector.
Lastly an `objc_direct_members` attribute is added that can decorate
`@implementation` blocks and causes methods only declared there (and in
no `@interface`) to be automatically direct. When decorating an
`@interface` then all methods and properties declared in this block are
marked direct.
Radar-ID: rdar://problem/2684889 Differential Revision:
https://reviews.llvm.org/D69991 Reviewed-By: John McCall
The file was modifiedclang/include/clang/Basic/ObjCRuntime.h
The file was modifiedclang/lib/CodeGen/CGObjCMac.cpp
The file was modifiedclang/test/Misc/pragma-attribute-supported-attributes-list.test
The file was modifiedclang/include/clang/Basic/AttrDocs.td
The file was modifiedclang/lib/CodeGen/CGObjCRuntime.h
The file was modifiedclang/lib/Parse/ParseObjc.cpp
The file was modifiedclang/lib/Sema/SemaDeclObjC.cpp
The file was modifiedclang/lib/AST/TextNodeDumper.cpp
The file was modifiedclang/lib/AST/JSONNodeDumper.cpp
The file was modifiedclang/lib/Sema/SemaObjCProperty.cpp
The file was modifiedclang/include/clang/Basic/Attr.td
The file was modifiedclang/lib/CodeGen/CGObjC.cpp
The file was modifiedclang/include/clang/AST/DeclObjC.h
The file was modifiedclang/include/clang/Sema/Sema.h
The file was addedclang/test/CodeGenObjC/direct-method.m
The file was modifiedclang/lib/AST/DeclObjC.cpp
The file was addedclang/test/SemaObjC/method-direct-properties.m
The file was modifiedclang/include/clang/Basic/DiagnosticSemaKinds.td
The file was modifiedclang/lib/Sema/SemaExprObjC.cpp
The file was modifiedclang/include/clang/Sema/DeclSpec.h
The file was modifiedclang/lib/CodeGen/CGObjCGNU.cpp
The file was modifiedclang/lib/Sema/SemaDeclAttr.cpp
The file was addedclang/test/SemaObjC/method-direct.m
The file was modifiedclang/lib/AST/DeclPrinter.cpp
Commit ff75bf6ac93a9ef5a7d41f7645e02fde3e968ce1 by craig.topper
[X86] Add AMD Matisse (znver2) model number to getHostCPUName and
compiler-rt's getAMDProcessorTypeAndSubtype.
This is the CPUID model used on Ryzen 3000 series (Zen 2/Matisse) CPUs.
Patch by Alex James
Differential Revision: https://reviews.llvm.org/D70279
The file was modifiedllvm/lib/Support/Host.cpp
The file was modifiedcompiler-rt/lib/builtins/cpu_model.c
Commit 3be6dbca3b88e82009e1990957c15b94455c1714 by tejohnson
[ThinLTO] Promotion handling cleanup (NFC)
Summary: Clean up the code that does GV promotion in the ThinLTO
backends.
Specifically, we don't need to check whether we are importing since that
is already checked and handled correctly in shouldPromoteLocalToGlobal.
Simply call shouldPromoteLocalToGlobal, and if it returns true we are
guaranteed that we are promoting, whether or not we are importing (or in
the exporting module). This also makes the handling in getName()
consistent with that in getLinkage(), which checks the DoPromote
parameter regardless of whether we are importing or exporting.
Reviewers: steven_wu, pcc, evgeny777
Subscribers: mehdi_amini, inglorion, hiraditya, dexonsmith, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D70327
The file was modifiedllvm/include/llvm/Transforms/Utils/FunctionImportUtils.h
The file was modifiedllvm/lib/Transforms/Utils/FunctionImportUtils.cpp
Commit 626260cfe3c7a5d9747f0bf13d87fa1855eb74bb by danalbert
Update the docs for building libc++.
Summary: Rewrite the in-tree build to be a clearer tl;dr like we have
for the out-of-tree build.
Reviewers: EricWF, mclow.lists, ldionne
Reviewed By: ldionne
Subscribers: dexonsmith, christof, ldionne, enh, libcxx-commits
Tags: #libc
Differential Revision: https://reviews.llvm.org/D69917
The file was modifiedlibcxx/docs/BuildingLibcxx.rst
Commit 8bfb353bb33cd2bcd2ef28e36eb8b90123b153c4 by erik.pilkington
[Sema] Fix a -Wobjc-signed-char-bool false-positive
Unsigned bit-field flags can only have boolean values, so handle that
case in Expr::isKnownToHaveBooleanValue.
rdar://56256999
The file was modifiedclang/lib/AST/Expr.cpp
The file was modifiedclang/test/SemaObjC/signed-char-bool-conversion.m
Commit fffcd3e48ecf3f66d97c3b4daf624b3b2f9d74bf by craig.topper
[X86] Add a 'break;' to the end of the last case in a switch to avoid
surprising the next person to add a case after this one. NFC
The file was modifiedllvm/lib/Target/X86/X86ISelDAGToDAG.cpp
Commit 19fd9039ca242f408493b5c662f9d908eab8555e by danalbert
Fix _LIBCPP_HAS_ definitions for Android.
Summary: Android added quick_exit()/at_quick_exit() in API level 21,
aligned_alloc() in API level 28, and timespec_get() in API level 29, but
has the other C11 features at all API levels (since they're basically
just coming from clang directly).
_LIBCPP_HAS_QUICK_EXIT and _LIBCPP_HAS_TIMESPEC_GET already existed, so
we can reuse them. (And use _LIBCPP_HAS_TIMESPEC_GET in a few more
places where _LIBCPP_HAS_C11_FEATURES has been used as a proxy. This
isn't correct for Android.)
_LIBCPP_HAS_ALIGNED_ALLOC is added, to cover aligned_alloc()
(obviously).
Add a missing std:: before aligned_alloc in a cstdlib test, and remove a
couple of !defined(_WIN32)s now that we're explicitly testing
TEST_HAS_ALIGNED_ALLOC rather than TEST_HAS_C11_FEATURES.
Reviewers: danalbert, EricWF, mclow.lists
Reviewed By: danalbert
Subscribers: srhines, christof, libcxx-commits
Tags: #libc
Differential Revision: https://reviews.llvm.org/D69929
The file was modifiedlibcxx/test/std/language.support/support.runtime/ctime.pass.cpp
The file was modifiedlibcxx/test/std/utilities/time/date.time/ctime.pass.cpp
The file was modifiedlibcxx/include/ctime
The file was modifiedlibcxx/test/std/depr/depr.c.headers/stdlib_h.pass.cpp
The file was modifiedlibcxx/include/__config
The file was modifiedlibcxx/include/cstdlib
The file was modifiedlibcxx/test/std/language.support/support.runtime/cstdlib.pass.cpp
The file was modifiedlibcxx/test/support/test_macros.h
Commit 8f8a9f3437d4517f674395da30edb59d5514f7bc by diggerlin
implement printing out raw section data of xcoff objectfile for
llvm-objdump
SUMMARY: implement printing out raw section data of xcoff objectfile for
llvm-objdump and option -D --disassemble-all option for llvm-objdump
Reviewers: Sean Fertile Subscribers: rupprecht, seiyai,hiraditya
Differential Revision: https://reviews.llvm.org/D70255
The file was modifiedllvm/lib/Object/XCOFFObjectFile.cpp
The file was addedllvm/test/tools/llvm-objdump/xcoff-raw-section-data.test
The file was addedllvm/test/tools/llvm-objdump/xcoff-disassemble-all.test
Commit ee31adb7fa42f5b601d9612f23755b4604f83cac by dimitry
Populate CUDA flags on FreeBSD too, as many other toolchains do.
Summary: This allows `clang` to be used to compile CUDA programs.
Compiled simple helloworld.cu with this.
Reviewers: dim, emaste, tra, yaxunl, ABataev
Reviewed By: tra
Subscribers: dim, emaste, cfe-commits
Tags: #clang
Differential Revision: https://reviews.llvm.org/D69990
The file was modifiedclang/lib/Driver/ToolChains/FreeBSD.cpp
The file was addedclang/test/Driver/cuda-options-freebsd.cu
The file was modifiedclang/lib/Driver/ToolChains/FreeBSD.h
Commit cc1b0bc24d2703087d80e4f4dc0560879733299a by tejohnson
[ThinLTO] Avoid extra index lookup during promotion
Summary: Pass down the already accessed ValueInfo to
shouldPromoteLocalToGlobal, to avoid an unnecessary extra index lookup.
Add some assertion checking to confirm we have a non-empty VI when
expected.
Also some misc cleanup, merging the two versions of
doImportAsDefinition, since one was only called by the other, and
unnecessarily passed in a member variable.
Reviewers: steven_wu, pcc, evgeny777
Reviewed By: evgeny777
Subscribers: mehdi_amini, inglorion, hiraditya, dexonsmith, arphaman,
llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D70337
The file was modifiedllvm/lib/Transforms/Utils/FunctionImportUtils.cpp
The file was modifiedllvm/include/llvm/Transforms/Utils/FunctionImportUtils.h
Commit 2492b5a12550f7c4bb428c3761392f2ce47fa269 by Vedant Kumar
[profile] Support online merging with continuous sync mode
Make it possible to use online profile merging ("%m" mode) with
continuous sync ("%c" mode).
To implement this, the merged profile is locked in the runtime
initialization step and either a) filled out for the first time or b)
checked for compatibility. Then, the profile can simply be mmap()'d with
MAP_SHARED set. With the mmap() in place, counter updates from every
process which uses an image are mapped onto the same set of physical
pages assigned by the filesystem cache. After the mmap() is set up, the
profile is unlocked.
Differential Revision: https://reviews.llvm.org/D69586
The file was modifiedcompiler-rt/lib/profile/InstrProfilingFile.c
The file was modifiedcompiler-rt/lib/profile/InstrProfilingPort.h
The file was addedcompiler-rt/test/profile/ContinuousSyncMode/online-merging.c
The file was modifiedclang/docs/SourceBasedCodeCoverage.rst
The file was modifiedcompiler-rt/lib/profile/InstrProfilingBuffer.c
Commit c941db5b1acdc45fc1c50762684f1014e981abc6 by daniel_l_sanders
[macho] Allow CPUSubtype to be adjusted before writing it to a file
Summary: It's not always possible for a target to provide a MachO
CPUSubtype up front as is required by the current implementation.
Sometimes you need more information like the particular CPU
implementation you are targeting.
Give MCMachObjectTargetWriter subclasses the opportunity to modify the
CPUSubtype after the MCMachObjectTargetWriter is created but before the
object starts being written. Typically this would be done in response to
instructions from a TargetStreamer.
Reviewers: pete
Subscribers: llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D70344
The file was modifiedllvm/include/llvm/MC/MCMachObjectWriter.h
Commit 17919017878e9abda5bb33a38199c593b151dcd7 by daniel_l_sanders
[macho] Allow CPUSubtype to contribute to architecture identification
Summary: Sometimes the CPUSubtype determines the Triple::ArchType that
must be used. Add the subtype to the API's to allow targets that need
this to correctly identify the contents of the binary.
Reviewers: pete
Subscribers: hiraditya, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D70345
The file was modifiedllvm/lib/Object/MachOObjectFile.cpp
The file was modifiedllvm/include/llvm/Object/MachO.h
Commit 9b36f2cfd98d56531b95c1f62976c01b65a0c18b by Cyndy Ishida
Fix iOSDarwin()'s doc comment.
Summary: I saw the doc comment using the Option + Click in Xcode and I
was confused by the fact that tvOS wasn't listed. The method definition
also doesn't make it clear that the check for tvOS is taking place as
the tvOS check is hidden in the isiOS() check.
Reviewers: rjmccall
Reviewed By: rjmccall
Subscribers: dexonsmith, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D70364
This patch is from Varun Gandhi <varun_gandhi@apple.com>
The file was modifiedllvm/include/llvm/ADT/Triple.h
Commit 991831268285b955dcb459a1ea2a5f4507a33729 by Louis Dionne
[libc++] Separate -include and path to the site config file
This apparently breaks weird use cases where the build directory is on a
separate drive. Someone reported that failure to me privately.
I can't remember of a reason for collating the two arguments in the
first place, so I don't think this should break anything.
The file was modifiedlibcxx/CMakeLists.txt
Commit d82dd6ac9a8500448ebfdc0c77e362e496b80e2f by mgorny
[lldb] [unittest] Reenable MainLoopTest.DetectsEOF on NetBSD
The underlying issue is already fixed in the NetBSD kernel for some
time, so we can finally reenable the test.
The file was modifiedlldb/unittests/Host/MainLoopTest.cpp
Commit b59af82805cf53d59fd83fe02761160dfc2ac6a2 by mgorny
[lldb] [unittest] Skip TestStopReplyContainsThreadPcs on NetBSD
The file was modifiedlldb/unittests/tools/lldb-server/tests/ThreadIdsInJstopinfoTest.cpp
Commit 4539a2d20c5c220dd29273b6cfec3ad0b25c5d13 by mgorny
[lldb] [test] Mark segv-related tests XFAIL on NetBSD
There seems to be a regression in the kernel causing those tests to
fail.  Mark them XFAIL, to be addressed later.
The file was modifiedlldb/packages/Python/lldbsuite/test/commands/expression/call-restarts/TestCallThatRestarts.py
The file was modifiedlldb/packages/Python/lldbsuite/test/functionalities/inferior-crashing/TestInferiorCrashingStep.py
The file was modifiedlldb/packages/Python/lldbsuite/test/functionalities/signal/handle-segv/TestHandleSegv.py
Commit 085486779890e394dd42447c7c5b0fb36a79ea2b by mgorny
[lldb] [test] XFAIL more lldb-server tests on NetBSD
The file was modifiedlldb/packages/Python/lldbsuite/test/tools/lldb-server/TestLldbGdbServer.py
Commit 0213adde218530bc31e5c4e50b49704c6bb2f2e9 by erich.keane
[NFC] Fix 'target' condition in checkTargetFeatures
checkTargetFeatures was incorrectly checking for cpu_specific instead of
just 'target'. While this function was never called in that situation,
it seemed correct to fix the condition.  Additionally, multiversion
functions can never be always_inline, but if any function accidentially
ended up here we shouldn't diagnose.
Note that the adding of target-features to the list is unnecessary since
the getFunctionFeatureMap actually considers attribute target, however
adding it results in significantly better error messages by putting the
'target' features first (and thus first to fail). Otherwise, the error
message would be the first feature 'implied' by the target attribute,
and not necessarily the feature listed in the attribute itself.
The file was modifiedclang/lib/CodeGen/CodeGenFunction.cpp
Commit 6512473ceef277705a9d0ac7824d319186e802d9 by stefanp
[PowerPC] Improve float vector gather codegen
This patch aims to improve the code generation for float vector gather
on POWER9. Patterns have been implemented to utilize instructions that
deliver improved performance.
Patch by: Kamau Bridgeman
Differential Revision: https://reviews.llvm.org/D62908
The file was modifiedllvm/test/CodeGen/PowerPC/float-vector-gather.ll
The file was modifiedllvm/lib/Target/PowerPC/PPCInstrVSX.td
Commit b763924bd0f5fe1334bbcdcae4ce07ef40b4dac2 by spatel
[SLP] reduce duplicated check lines in tests; NFC
The file was modifiedllvm/test/Transforms/SLPVectorizer/X86/horizontal-minmax.ll
Commit 5e0a4eddac2477a5792a11bc2beb12749b91eb55 by diggerlin
Adding a test case for read-only data assembly writing for aix
SUMMARY:
Adding a test case  for read-only data assembly writing for aix
Reviewers: daltenty,Xiangling_Liao Subscribers: rupprecht,
seiyai,hiraditya
Differential Revision: https://reviews.llvm.org/D70182
The file was addedllvm/test/CodeGen/PowerPC/aix-xcoff-rodata.ll
Commit 6f1cc4151a5ad297b2d1d87d98e266f9729100e2 by echristo
Temporarily revert "[SLP] fix miscompile on min/max reductions with
extra uses (PR43948)" as it causes an ICE on valid. A testcase was
followed up on the original thread.
This reverts commit a3e61946c5bd7bdfab15af76b292e52d6ffa27f7.
The file was modifiedllvm/test/Transforms/SLPVectorizer/X86/used-reduced-op.ll
The file was modifiedllvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
The file was modifiedllvm/test/Transforms/SLPVectorizer/X86/reduction.ll
Commit aeca47fa0fbc36a43bced6a482a2e61acc3162a1 by tejohnson
ThinLTO: Fix assembler to emit alwaysInline in the summary
Summary: The earlier commit (https://reviews.llvm.org/D70014) missed
this one : If Always_Inline happens to be the only entry in FuncFlags,
then the assembler will not print it in the summary.
Patch by Bharathi Seshadri <bseshadr@cisco.com>
Reviewers: tejohnson
Reviewed By: tejohnson
Subscribers: mehdi_amini, inglorion, hiraditya, steven_wu, dexonsmith,
llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D70323
The file was modifiedllvm/test/ThinLTO/X86/funcimport_alwaysinline.ll
The file was modifiedllvm/lib/IR/AsmWriter.cpp
Commit e84468c1f145e9a5e54640ebdc78bc40c7da3fce by Steven Wu
[llvm-cxxfilt] Improve strip-underscore behavior
Summary: For platform that uses macho format, c++filt should be
stripping the leading underscore by default. Introduce the binutil
compatible "-n" option to control strip-undercore behaivor together with
the existing
"-_" option and fallback to system default if none of them are set.
rdar://problem/57173514
Reviewers: compnerd, erik.pilkington, dexonsmith, mattd
Reviewed By: compnerd, erik.pilkington
Subscribers: jkorous, ributzka, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D70250
The file was modifiedllvm/test/tools/llvm-cxxfilt/noargs.test
The file was modifiedllvm/test/tools/llvm-cxxfilt/simple.test
The file was modifiedllvm/test/tools/llvm-cxxfilt/underscore.test
The file was modifiedllvm/test/tools/llvm-cxxfilt/abitag.test
The file was modifiedllvm/test/tools/llvm-cxxfilt/delimiters.test
The file was modifiedllvm/test/tools/llvm-cxxfilt/invalid.test
The file was modifiedllvm/tools/llvm-cxxfilt/llvm-cxxfilt.cpp
The file was addedllvm/test/tools/llvm-cxxfilt/darwin.test
The file was modifiedllvm/test/tools/llvm-cxxfilt/coff-import.test
The file was modifiedllvm/test/tools/llvm-cxxfilt/empty-line.test
The file was modifiedllvm/test/tools/llvm-cxxfilt/types.test
Commit ea1db31d20a74e5025a86b0df49163d5bfecb67b by Vedant Kumar
[CodeGen] Assign locations to calls to special struct helpers
Assign artificial locations to calls to special struct-related helper
functions.
Such calls may not inherit a location if emitted within FinishFunction,
at which point the lexical scope stack may be empty, causing CGDebugInfo
to report the current DebugLoc as empty.
Fixes an IR verifier complaint about a call to '__destructor_8_s0' not
having a !dbg location attached.
rdar://57293361
The file was modifiedclang/test/CodeGenObjC/nontrivial-c-struct-exception.m
The file was modifiedclang/lib/CodeGen/CGNonTrivialStruct.cpp
Commit e4ec2ecf6d4768d681a89263c0a4d29a7b7761ad by thakis
gn build: (manually) try to merge 1689ad27af
The file was modifiedllvm/utils/gn/secondary/compiler-rt/lib/builtins/BUILD.gn
Commit 327904d3cfe03faf1615578066d1a3889c2b9a2a by llvmgnsyncbot
gn build: Merge 30e7ee3c4ba
The file was modifiedllvm/utils/gn/secondary/llvm/lib/IR/BUILD.gn
Commit f805c60a093325c16ce4200d2615ef48555d9cb8 by wolfgang_pieb
Revert "[clangd] Implement rename by using SelectionTree and
findExplicitReferences."
This reverts commit 4f80fc2491cc35730a9a84b86975278b7daa8522.
Caused buildbot failure at
http://lab.llvm.org:8011/builders/llvm-clang-lld-x86_64-scei-ps4-ubuntu-fast/builds/58251
The file was modifiedclang-tools-extra/clangd/unittests/RenameTests.cpp
The file was modifiedclang-tools-extra/clangd/refactor/Rename.cpp
Commit b29c7fdb617cba4c83037840842a872e8bf2f6b1 by aaronpuchert
[OpenMP] Remove -Wl,-fini=__kmp_internal_end_fini
Summary: The termination function duplicated the functionality of the
__attribute((destructor))-annotated function __kmp_internal_end_fini,
and we have no indication that this doesn't work.
The function might cause issues with link-time optimization turned on:
until very recently, none of the usual linkers was reporting functions
named in -Wl,-fini as used to the LTO plugin, so it might be dropped. If
the function is dropped, -Wl,-fini=__kmp_internal_end_fini doesn't do
what we want: with ld.bfd and lld it drops the FINI attribute from
.dynamic and with gold we get FINI = 0x0, which leads to a crash on
cleanup. This can be reproduced by building with
    -DLLVM_ENABLE_PROJECTS="clang;openmp" \
   -DLLVM_ENABLE_LTO=Thin \
   -DLLVM_USE_LINKER=gold
The issue in lld has been fixed in f95273f75aa, but gold remains without
fix so far.
Fixes PR43927.
Reviewers: JonChesterfield, jdoerfert, AndreyChurbanov
Reviewed By: AndreyChurbanov
Differential Revision: https://reviews.llvm.org/D69927
The file was modifiedopenmp/runtime/cmake/config-ix.cmake
The file was modifiedopenmp/runtime/src/kmp.h
The file was modifiedopenmp/runtime/src/kmp_runtime.cpp
The file was modifiedopenmp/runtime/cmake/LibompHandleFlags.cmake
Commit f19ea6ea5f8c0a05bf7638dad857c70f9236b6e8 by Jonas Devlieghere
[Docs] Add reproducer documentation
This adds a page about LLDB reproducers. It describes how to use the
reproducers on the command line and lists some of the known
issues/limitations.
Differential revision: https://reviews.llvm.org/D70409
The file was modifiedlldb/docs/index.rst
The file was addedlldb/docs/resources/reproducers.rst
Commit 6a1b51282bc5728b77a80581a4aa38edcc9f95e5 by tejohnson
Fix error message missed in commit
dde589389fcb8b5098f7a47f1b781b27d29a0cac.
Patch by Andrew Browne <browneee@google.com>
Reviewers: tejohnson, evgeny777
Reviewed By: tejohnson
Subscribers: arphaman, hiraditya, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D70195
The file was modifiedllvm/lib/IR/ModuleSummaryIndex.cpp
The file was modifiedllvm/lib/Bitcode/Writer/BitcodeWriter.cpp
The file was modifiedllvm/include/llvm/IR/ModuleSummaryIndex.h
The file was modifiedllvm/lib/Bitcode/Reader/BitcodeReader.cpp
Commit 755afc0af8f9a448befb0802a045746dc72ef759 by Jonas Devlieghere
[CMake] Re-enable -Wno-gnu-anonymous-struct & -Wno-nested-anon-types.
We're checking for support but we're discarding the result. My best
guess is that these warnings were disabled in the past. However, I don't
see a reason to keep it that way.
The file was modifiedlldb/cmake/modules/LLDBConfig.cmake
Commit a921f587f7b0df7dc37ff44117321cfa7849edb6 by Jonas Devlieghere
Revert "[CMake] Re-enable -Wno-gnu-anonymous-struct &
-Wno-nested-anon-types."
Whoops, they should be enabled, not disabled.
The file was modifiedlldb/cmake/modules/LLDBConfig.cmake
Commit 88235812a71d99c082e7aa2ef9356d43d1f83a80 by lkail
[Bindings][Go] Fix go.test failure due to missing argument go.test
failed with error ```
/tmp/gopath431502532/src/llvm.org/llvm/bindings/go/llvm/dibuilder.go:514:40:
not enough arguments in call to _Cfunc_LLVMDIBuilderCreateTypedef      
have (_Ctype_LLVMDIBuilderRef, _Ctype_LLVMMetadataRef, *_Ctype_char,
_Ctype_ulong, _Ctype_LLVMMetadataRef, _Ctype_uint,
_Ctype_LLVMMetadataRef)         want
(*_Ctype_struct_LLVMOpaqueDIBuilder, *_Ctype_struct_LLVMOpaqueMetadata,
*_Ctype_char, _Ctype_ulong, *_Ctype_struct_LLVMOpaqueMetadata,
_Ctype_uint, *_Ctype_struct_LLVMOpaqueMetadata, _Ctype_uint) ``` This
patch fixes above error.
Differential Revision: https://reviews.llvm.org/D70360
The file was modifiedllvm/bindings/go/llvm/dibuilder.go
Commit 6ae7315746f1e89b49c70413d709b472e532c8e2 by lkail
Revert "[Bindings][Go] Fix go.test failure due to missing argument"
This reverts commit 88235812a71d99c082e7aa2ef9356d43d1f83a80 due to
d27a16eb392f39f9ee04ff5194b1eff3e189e6f8.
The file was modifiedllvm/bindings/go/llvm/dibuilder.go
Commit d0371f473675ede1d79a615ec4fdf0cf5368944c by ruiu
Fix component build
b11386f9be9b2dc7276a758d64f66833da10bdea broke lld build if
`-DBUILD_SHARED_LIBS=ON` is passed to CMake.
The file was modifiedlld/lib/Core/Resolver.cpp
The file was modifiedlld/lib/Driver/DarwinLdDriver.cpp
The file was modifiedlld/lib/ReaderWriter/MachO/MachONormalizedFileToAtoms.cpp
The file was modifiedlld/lib/ReaderWriter/MachO/MachOLinkingContext.cpp
The file was modifiedlld/lib/ReaderWriter/FileArchive.cpp
The file was modifiedlld/lib/ReaderWriter/MachO/LayoutPass.cpp
The file was modifiedlld/lib/Core/SymbolTable.cpp
Commit 45f8ee5f3c5ad4bc0b041c49a251d674c14dbc13 by ruiu
Revert "Fix shared lib build."
This reverts commit 17e37ba57a696198c9744eeba4f8f293f155587a because it
introduced a circular dependency between Core and Common. Because
d0371f473675ede1d79a615ec4fdf0cf5368944c fixed a build issue, we no
longer need that dependency.
The file was modifiedlld/lib/Core/CMakeLists.txt
The file was modifiedlld/lib/ReaderWriter/CMakeLists.txt
Commit 66b6b92765213a6bde96aea7a393621426027543 by leonardchan
Revert "implement printing out raw section data of xcoff objectfile for
llvm-objdump"
This reverts commit 8f8a9f3437d4517f674395da30edb59d5514f7bc.
Reverting since this patch seems to break a lot of llvm buildbots.
The file was modifiedllvm/lib/Object/XCOFFObjectFile.cpp
The file was removedllvm/test/tools/llvm-objdump/xcoff-disassemble-all.test
The file was removedllvm/test/tools/llvm-objdump/xcoff-raw-section-data.test
Commit dc02eb1909961dc2c10a900599925ccfecfc241d by craig.topper
[SelectionDAG] Merge the two identical ExpandChainLibCall methods from
LegalizeTypes and LegalizeDAG to one version in TaretLowering.
Reviewers: RKSimon, efriedma, spatel
Reviewed By: efriedma
Subscribers: hiraditya, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D70354
The file was modifiedllvm/lib/CodeGen/SelectionDAG/LegalizeIntegerTypes.cpp
The file was modifiedllvm/include/llvm/CodeGen/TargetLowering.h
The file was modifiedllvm/lib/CodeGen/SelectionDAG/LegalizeTypes.h
The file was modifiedllvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
The file was modifiedllvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp
The file was modifiedllvm/lib/CodeGen/SelectionDAG/LegalizeTypes.cpp
Commit 6f06eda070eb574ad3ad6612f037e1fab7a1f0db by arsenm2
bugpoint: Add option to disable attribute removal
This takes a long time and never reduces anything useful for me
(e.g. I've been waiting for 3 hours on a testcase and it hasn't found
any attributes to remove yet). This should probably start by assuming no
attributes matter, and adding back.
The file was modifiedllvm/test/BugPoint/func-attrs.ll
The file was modifiedllvm/tools/bugpoint/CrashDebugger.cpp
Commit b337bce8710f2a7ab8ce9f84c80cfbce1032963c by arsenm2
AMDGPU: Split test functions to avoid dependency on subtarget
Prepare this test for moving tthe denormal setting out of the subtarget
features.
The file was modifiedllvm/test/Analysis/CostModel/AMDGPU/fdiv.ll
Commit 58ea00b51fe9b011301484957556872fced7dd08 by puyan
[clang][IFS] Driver pipeline: generate interface stubs after standard
pipeline.
Up until now, clang interface stubs has replaced the standard PP -> C ->
BE -> ASM -> LNK pipeline. With this change, it will happen in
conjunction with it. So what when you build your code you will get an
a.out or lib.so as well as an interface stub file.
Example:
clang -shared -o libfoo.so -emit-interface-stubs ...
will generate both a libfoo.so and a libfoo.ifso. The .so file will
contain the code from the standard compilation pipeline and the .ifso
file will contain the ELF stub library.
Differential Revision: https://reviews.llvm.org/D70274
The file was modifiedclang/lib/Driver/ToolChains/InterfaceStubs.cpp
The file was addedclang/test/InterfaceStubs/driver-test2.c
The file was modifiedclang/lib/Driver/Driver.cpp
The file was modifiedclang/test/InterfaceStubs/windows.cpp
The file was modifiedclang/lib/Driver/Types.cpp
The file was modifiedclang/test/InterfaceStubs/driver-test.c
Commit d044dcc5e492181b1517347013a780d9eda6c3c3 by puyan
Revert "[clang][IFS] Driver pipeline: generate interface stubs after
standard pipeline."
This reverts commit 58ea00b51fe9b011301484957556872fced7dd08.
Test for .o + .ifs sidecar files is brittle and failing on bots.
Reverting to unblock.
The file was modifiedclang/test/InterfaceStubs/driver-test.c
The file was modifiedclang/lib/Driver/Types.cpp
The file was modifiedclang/lib/Driver/ToolChains/InterfaceStubs.cpp
The file was modifiedclang/lib/Driver/Driver.cpp
The file was modifiedclang/test/InterfaceStubs/windows.cpp
The file was removedclang/test/InterfaceStubs/driver-test2.c
Commit 926d283893ae764cfba0360badcd7cc9fef4dfe5 by martin
[lldb-server] Use LLDB_LOG_ERROR to consume Error<> even if logging is
disabled
Differential Revision: https://reviews.llvm.org/D70386
The file was modifiedlldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp
The file was modifiedlldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationServerLLGS.cpp
The file was modifiedlldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationReplayServer.cpp
Commit d593292f0465c9db1f2c3cdf719009bfdf942a5c by chfast
[X86] Add more addcarry tests
Summary: More addcarry tests for incoming
https://reviews.llvm.org/D70079.
Reviewers: davezarzycki, RKSimon, spatel, craig.topper
Reviewed By: spatel
Subscribers: craig.topper, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D70237
The file was modifiedllvm/test/CodeGen/X86/subcarry.ll
The file was modifiedllvm/test/CodeGen/X86/addcarry.ll
Commit 8978c12b39f90194bb35860729ddca5e819f3b92 by sam.parker
[ARM][MVE] Tail predication conversion
This patch modifies ARMLowOverheadLoops to convert a predicated vector
low-overhead loop into a tail-predicatd one. This is currently a very
basic conversion, with the following restrictions:
- Operates only on single block loops.
- The loop can only contain a single vctp instruction.
- No other instructions can write to the vpr.
- We only allow a subset of the mve instructions in the loop.
TODO: Pass the number of elements, not the number of iterations to
dlstp/wlstp.
Differential Revision: https://reviews.llvm.org/D69945
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/fast-fp-loops.ll
The file was modifiedllvm/lib/Target/ARM/ARMLowOverheadLoops.cpp
The file was modifiedllvm/lib/Target/ARM/ARMInstrMVE.td
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/vector-arith-codegen.ll
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/mve-tail-data-types.ll
The file was modifiedllvm/unittests/Target/ARM/MachineInstrTest.cpp
Commit a19f0eec94e195cac676d0d473882b48f4fded90 by hans
Revert 1689ad27af5 "[builtins] Implement rounding mode support for
i386/x86_64"
It broke the build with MSVC:
fp_mode.c(20): error C2065: '__asm__': undeclared identifier
> Differential Revision: https://reviews.llvm.org/D69870
The file was modifiedcompiler-rt/test/builtins/Unit/subtf3_test.c
The file was modifiedcompiler-rt/lib/builtins/CMakeLists.txt
The file was removedcompiler-rt/lib/builtins/i386/fp_mode.c
The file was modifiedcompiler-rt/test/builtins/Unit/addtf3_test.c
Commit 4a64d710aebb7c598004d0a26810978cd7311e5b by evgueni.brevnov
[NFC] Test commit. Please ignore.
As a test commit I fixed a misspelling in one of comments in SLP
vectorizer.
The file was modifiedllvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
Commit 8b5f6c16476c7a8f50b660fb6e1b549759a783b6 by mydeveloperday
[clang-format] [NFC] add recent changes to release notes
Summary: clang-tidy keeps nice release notes of what is added, have
clang-format do the same.
Reviewers: klimek, mitchell-stellar, sylvestre.ledru, sammccall
Reviewed By: mitchell-stellar
Subscribers: merge_guards_bot, Eugene.Zelenko, cfe-commits
Tags: #clang-format, #clang
Differential Revision: https://reviews.llvm.org/D70355
The file was modifiedclang/docs/ReleaseNotes.rst
Commit d43913ae3818c86e640f406761ec7202a8ebb24e by sam.parker
[ARM][MVE] Enable narrow vectors for tail pred
Remove the restriction, from the mve tail predication pass, that the all
masked vectors instructions need to be 128-bits. This allows us to
supported extending loads and truncating stores.
Differential Revision: https://reviews.llvm.org/D69946
The file was modifiedllvm/lib/Target/ARM/MVETailPredication.cpp
The file was addedllvm/test/CodeGen/Thumb2/LowOverheadLoops/wlstp.mir
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/nested.ll
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/mve-tail-data-types.ll
Commit fd03be363421fa65cbe5447eef489a67517e9083 by czhengsz
[APInt] add wrap support for `setBits` and `getBitsSet`
Add two new interfaces getBitsSet and getBitsSetWithWrap
Reviewed by: lebedev.ri, craig.topper
Differential Revision: https://reviews.llvm.org/D69032
The file was modifiedllvm/unittests/ADT/APIntTest.cpp
The file was modifiedllvm/include/llvm/ADT/APInt.h
Commit 7db1230a9f5e0185a88019c9aa5b55bd85498285 by hokein.wu
Reland "[clangd] Implement rename by using SelectionTree and
findExplicitReferences."
this reland the commit 4f80fc2491cc35730a9a84b86975278b7daa8522 which
has been reverted at f805c60a093325c16ce4200d2615ef48555d9cb8.
Fixed windows buildbot failure (by adding -fno-delayed-template-parsing
flag).
The file was modifiedclang-tools-extra/clangd/refactor/Rename.cpp
The file was modifiedclang-tools-extra/clangd/unittests/RenameTests.cpp
Commit c0fc29c4684a997d282bfed71eb4d903ad16ee25 by pavel
Add operator<< for object::SectionedAddress
The main motivation for this is better failure messages in unit tests.
Split off from D70394.
The file was modifiedllvm/lib/Object/ObjectFile.cpp
The file was addedllvm/unittests/Object/ObjectFileTest.cpp
The file was modifiedllvm/unittests/Object/CMakeLists.txt
The file was modifiedllvm/include/llvm/Object/ObjectFile.h
Commit 39285a0f02c7bc5e4bad8a684a900123b097511d by pavel
Add streaming/equality operators to
DWARFAddressRange/DWARFLocationExpression
The main motivation for this is being able to write simpler assertions
and get better error messages in unit tests.
Split off from D70394.
The file was modifiedllvm/lib/DebugInfo/DWARF/CMakeLists.txt
The file was modifiedllvm/include/llvm/DebugInfo/DWARF/DWARFLocationExpression.h
The file was addedllvm/lib/DebugInfo/DWARF/DWARFLocationExpression.cpp
The file was addedllvm/unittests/DebugInfo/DWARF/DWARFLocationExpressionTest.cpp
The file was modifiedllvm/unittests/DebugInfo/DWARF/CMakeLists.txt
The file was modifiedllvm/include/llvm/DebugInfo/DWARF/DWARFAddressRange.h
Commit 88276ddbfea753ac13da5a64c2020b7b0a06617f by thakis
Revert "gn build: (manually) try to merge 1689ad27af"
This reverts commit e4ec2ecf6d4768d681a89263c0a4d29a7b7761ad. 1689ad27af
was reverted as well.
The file was modifiedllvm/utils/gn/secondary/compiler-rt/lib/builtins/BUILD.gn
Commit f0021f95a1f40369e30bb94be1b0322747631047 by hokein.wu
[clangd] Fix ps4 buildbot failure.
dynamic_cast on ps4 buildbot seems relying on rtti flag which is off by
default. Remove the dynamic_cast in the tests.
The file was modifiedclang-tools-extra/clangd/unittests/RenameTests.cpp
Commit 6ec07140980770fccfcdf53fe43e7425a9f51a7b by sam.mccall
[clangd] More sensible output for constructors/destructors in hover.
Summary: Previously: both had type void() and return type void. Now:
neither have a type. Constructors return T, destructors return void.
Reviewers: hokein
Subscribers: merge_guards_bot, ilya-biryukov, MaskRay, jkorous,
arphaman, kadircet, usaxena95, cfe-commits
Tags: #clang
Differential Revision: https://reviews.llvm.org/D70317
The file was modifiedclang-tools-extra/clangd/XRefs.cpp
The file was modifiedclang-tools-extra/clangd/unittests/XRefsTests.cpp
The file was modifiedclang-tools-extra/clangd/AST.cpp
The file was modifiedclang-tools-extra/clangd/AST.h
Commit bb7c8e984f87e1de7c80abd33d00025ac366efa6 by diana.picus
Mark PR44037 tests as XFAIL on AArch64 Linux dwo
These tests are failing with various assertion failures, but they all
throw the following error message first:
error: a.out 0x0000002d: adding range [0x14-0x24) which has a base that
is less than the function's low PC 0x40060c.
See llvm.org/pr44037.
Differential Revision: https://reviews.llvm.org/D70381
The file was modifiedlldb/packages/Python/lldbsuite/test/python_api/frame/inlines/TestInlinedFrame.py
The file was modifiedlldb/packages/Python/lldbsuite/test/lang/c/inlines/TestRedefinitionsInInlines.py
The file was modifiedlldb/packages/Python/lldbsuite/test/lang/cpp/member-and-local-vars-with-same-name/TestMembersAndLocalsWithSameName.py
The file was modifiedlldb/packages/Python/lldbsuite/test/functionalities/breakpoint/breakpoint_locations/TestBreakpointLocations.py
Commit e51484abd402016a385e17896e87877b77bf4c7b by sam.mccall
[clangd] Fix hover 'local scope' to include class template params
Summary: Fixes the last part of
https://github.com/clangd/clangd/issues/76
Reviewers: kadircet
Subscribers: ilya-biryukov, MaskRay, jkorous, arphaman, usaxena95,
cfe-commits
Tags: #clang
Differential Revision: https://reviews.llvm.org/D70325
The file was modifiedclang-tools-extra/clangd/unittests/XRefsTests.cpp
The file was modifiedclang-tools-extra/clangd/XRefs.cpp
Commit d56dd62a98ebaaa6a30291a3a136851aee2361dd by sven.vanhaastregt
[kate] Add various missing keywords
Patch by Pedro Olsen Ferreira.
The file was modifiedllvm/utils/kate/llvm.xml
Commit d54e5a2c86615757dd2c50ad2b66d004dc226610 by llvmgnsyncbot
gn build: Merge 39285a0f02c
The file was modifiedllvm/utils/gn/secondary/llvm/unittests/DebugInfo/DWARF/BUILD.gn
The file was modifiedllvm/utils/gn/secondary/llvm/lib/DebugInfo/DWARF/BUILD.gn
Commit 26d36a1903ac3a076dec85753a710ac134839067 by llvmgnsyncbot
gn build: Merge c0fc29c4684
The file was modifiedllvm/utils/gn/secondary/llvm/unittests/Object/BUILD.gn
Commit 4fb8ecdef4c9b19563e428a151c376a4103d65fc by mikhail.maltsev
[libunwind] Adjust the signal_frame test for Arm
Summary: This patch adjusts the signal_frame.pass.cpp to pass on Arm
targets:
* When Arm EHABI is used the unwinder does not use DWARF, hence the
DWARF-specific check unw_is_signal_frame() must be disabled.
* Certain C libraries don't include EH tables, so the unwinder must
not try to step out of main(). The patch moves the test code out of
main() into a separate function to avoid this.
Reviewers: saugustine, ostannard, phosek, jfb, mclow.lists
Reviewed By: saugustine
Subscribers: dexonsmith, aprantl, kristof.beyls, christof,
libcxx-commits, pbarrio, labrinea
Tags: #libc
Differential Revision: https://reviews.llvm.org/D70397
The file was modifiedlibunwind/test/signal_frame.pass.cpp
Commit 4ef9315c4be0217ed9eb511a0e89228d32dc98cd by evgeny
[ThinLTO] Make ValueInfo::operator bool() explicit
Differential revision: https://reviews.llvm.org/D70383
The file was modifiedllvm/lib/Transforms/IPO/FunctionImport.cpp
The file was addedllvm/test/ThinLTO/X86/funcimport-stats.ll
The file was modifiedllvm/include/llvm/IR/ModuleSummaryIndex.h
Commit b6d7bbfa004310777cd41448ffc377aea082fc8c by zakk.chen
[RISCV] Support mutilib in baremetal environment
Currently only support the set of multilibs same to riscv-gnu-toolchain.
Reviewers: espindola, asb, kito-cheng, lenary
Reviewed By: lenary
Differential Revision: https://reviews.llvm.org/D67508
The file was addedclang/test/Driver/Inputs/multilib_riscv_elf_sdk/riscv64-unknown-elf/lib/rv32i/ilp32/crt0.o
The file was addedclang/test/Driver/Inputs/multilib_riscv_elf_sdk/lib/gcc/riscv64-unknown-elf/8.2.0/rv32i/ilp32/crtend.o
The file was addedclang/test/Driver/Inputs/multilib_riscv_elf_sdk/lib/gcc/riscv64-unknown-elf/8.2.0/rv32iac/ilp32/crtend.o
The file was addedclang/test/Driver/Inputs/multilib_riscv_elf_sdk/lib/gcc/riscv64-unknown-elf/8.2.0/rv32im/ilp32/crtend.o
The file was addedclang/test/Driver/Inputs/multilib_riscv_elf_sdk/riscv64-unknown-elf/lib/rv32iac/ilp32/crt0.o
The file was addedclang/test/Driver/Inputs/multilib_riscv_elf_sdk/riscv64-unknown-elf/lib/rv32imac/ilp32/crt0.o
The file was addedclang/test/Driver/Inputs/multilib_riscv_elf_sdk/riscv64-unknown-elf/lib/rv64imafdc/lp64d/crt0.o
The file was addedclang/test/Driver/Inputs/multilib_riscv_elf_sdk/lib/gcc/riscv64-unknown-elf/8.2.0/rv64imac/lp64/crtbegin.o
The file was addedclang/test/Driver/Inputs/multilib_riscv_elf_sdk/lib/gcc/riscv64-unknown-elf/8.2.0/crtend.o
The file was addedclang/test/Driver/Inputs/multilib_riscv_elf_sdk/lib/gcc/riscv64-unknown-elf/8.2.0/rv32imafc/ilp32f/crtbegin.o
The file was addedclang/test/Driver/Inputs/multilib_riscv_elf_sdk/lib/gcc/riscv64-unknown-elf/8.2.0/rv64imac/lp64/crtend.o
The file was modifiedclang/test/Driver/riscv32-toolchain.c
The file was modifiedclang/lib/Driver/ToolChains/Gnu.cpp
The file was addedclang/test/Driver/Inputs/multilib_riscv_elf_sdk/lib/gcc/riscv64-unknown-elf/8.2.0/rv32imac/ilp32/crtend.o
The file was addedclang/test/Driver/Inputs/multilib_riscv_elf_sdk/lib/gcc/riscv64-unknown-elf/8.2.0/rv32imafc/ilp32f/crtend.o
The file was modifiedclang/lib/Driver/ToolChains/RISCVToolchain.cpp
The file was addedclang/test/Driver/Inputs/multilib_riscv_elf_sdk/riscv64-unknown-elf/bin/ld
The file was addedclang/test/Driver/Inputs/multilib_riscv_elf_sdk/lib/gcc/riscv64-unknown-elf/8.2.0/rv32i/ilp32/crtbegin.o
The file was addedclang/test/Driver/Inputs/multilib_riscv_elf_sdk/lib/gcc/riscv64-unknown-elf/8.2.0/rv64imafdc/lp64d/crtend.o
The file was addedclang/test/Driver/Inputs/multilib_riscv_elf_sdk/lib/gcc/riscv64-unknown-elf/8.2.0/rv32imac/ilp32/crtbegin.o
The file was addedclang/test/Driver/Inputs/multilib_riscv_elf_sdk/riscv64-unknown-elf/lib/rv64imac/lp64/crt0.o
The file was modifiedclang/test/Driver/riscv64-toolchain.c
The file was addedclang/test/Driver/Inputs/multilib_riscv_elf_sdk/lib/gcc/riscv64-unknown-elf/8.2.0/rv32iac/ilp32/crtbegin.o
The file was addedclang/test/Driver/Inputs/multilib_riscv_elf_sdk/lib/gcc/riscv64-unknown-elf/8.2.0/rv64imafdc/lp64d/crtbegin.o
The file was addedclang/test/Driver/Inputs/multilib_riscv_elf_sdk/riscv64-unknown-elf/lib/rv32imafc/ilp32f/crt0.o
The file was addedclang/test/Driver/Inputs/multilib_riscv_elf_sdk/riscv64-unknown-elf/lib/crt0.o
The file was addedclang/test/Driver/Inputs/multilib_riscv_elf_sdk/lib/gcc/riscv64-unknown-elf/8.2.0/crtbegin.o
The file was addedclang/test/Driver/Inputs/multilib_riscv_elf_sdk/riscv64-unknown-elf/lib/rv32im/ilp32/crt0.o
The file was addedclang/test/Driver/Inputs/multilib_riscv_elf_sdk/lib/gcc/riscv64-unknown-elf/8.2.0/rv32im/ilp32/crtbegin.o
Commit 5f026b6d9e882941fde9b7e5dc0a2d807f7f24f5 by evgueni.brevnov
[DependenceAnalysis] Dependecies for loads marked with "ivnariant.load"
should not be shared with general accesses. Fix for
https://bugs.llvm.org/show_bug.cgi?id=42151
Summary: Dependence anlysis has a mechanism to cache results. Thus for
particular memory access the cache keep track of side effects in basic
blocks. The problem is that for invariant loads dependepce analysis
legally ignores many dependencies due to a special semantic rules for
such loads. But later results calculated for invariant load retrived
from the cache for general case acceses. As a result we have wrong
dependence information causing GVN to do illegal transformation. Fixes,
T42151.
Proposed solution is to disable caching of invariant loads. I think such
loads a pretty rare and it doesn't make sense to extend caching
mechanism for them.
Reviewers: reames, chandlerc, skatkov, morisset, jdoerfert
Reviewed By: reames
Subscribers: hiraditya, test, jdoerfert, lebedev.ri, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D64405
The file was modifiedllvm/lib/Analysis/MemoryDependenceAnalysis.cpp
Commit e8a4c74f1157017b22d1579b6ac80fb4a634bc2a by 1.int32
[clang-tidy] Added DefaultOperatorNewCheck.
Summary: Added new checker 'cert-default-operator-new' that checks for
CERT rule MEM57-CPP. Simple version.
Reviewers: aaron.ballman, alexfh, JonasToth, lebedev.ri
Reviewed By: aaron.ballman
Subscribers: hiraditya, martong, mehdi_amini, mgorny, inglorion,
xazax.hun, dkrupp, steven_wu, dexonsmith, Szelethus, gamesh411,
cfe-commits
Tags: #clang
Differential Revision: https://reviews.llvm.org/D67545
The file was addedclang-tools-extra/clang-tidy/cert/DefaultOperatorNewAlignmentCheck.h
The file was addedclang-tools-extra/docs/clang-tidy/checks/cert-mem57-cpp.rst
The file was modifiedclang-tools-extra/docs/clang-tidy/checks/list.rst
The file was modifiedclang-tools-extra/clang-tidy/cert/CMakeLists.txt
The file was modifiedclang-tools-extra/docs/ReleaseNotes.rst
The file was addedclang-tools-extra/clang-tidy/cert/DefaultOperatorNewAlignmentCheck.cpp
The file was addedclang-tools-extra/test/clang-tidy/cert-mem57-cpp-cpp17.cpp
The file was addedclang-tools-extra/test/clang-tidy/cert-mem57-cpp.cpp
The file was modifiedclang-tools-extra/clang-tidy/cert/CERTTidyModule.cpp
Commit 2fcf3e934b1b97329a075bd21f3ba3313fe0a32e by llvmgnsyncbot
gn build: Merge e8a4c74f115
The file was modifiedllvm/utils/gn/secondary/clang-tools-extra/clang-tidy/cert/BUILD.gn
Commit 7deb8ce4c161e9715181bd3618f059e8a4a742bb by simon
[mips] Joint MipsMemSimmXXXAsmOperand into the single template class.
NFC
The file was modifiedllvm/lib/Target/Mips/MipsInstrInfo.td
The file was modifiedllvm/lib/Target/Mips/MicroMipsInstrInfo.td
Commit a89ca4ae179def7fac1a35e53d7b28d4c9d531be by thomasp
Fix PR44001: assert failure in getFunctionLocalOffsetAfterInsn
Summary: Assert in getFunctionLocalOffsetAfterInsn() fails when
processing a call MachineInstr inside a bundle and compiling with debug
info. This is because labels are added by DwarfDebug::beginInstruction()
which is called for each top-level MI by EmitFunctionBody()'s for-loop
iteration but constructCallSiteEntryDIEs() which calls
getFunctionLocalOffsetAfterInsn() iterates over all MIs.
This commit modifies constructCallSiteEntryDIEs() to get the associated
bundle MI for call MIs inside a bundle and use that to when calling
getFunctionLocalOffsetAfterInsn() and getLabelAfterInsn(). It also skips
loop iterations for bundle MIs since the loop statements are concerned
with debug info for each physical instructions and bundles represent a
group of instructions. It also fix the comment about PCAddr since the
code is getting the return address and not the call address.
Reviewers: dstenb, vsk, aprantl, djtodoro, dblaikie, NikolaPrica
Subscribers: hiraditya, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D70293
The file was addedllvm/test/DebugInfo/MIR/Hexagon/bundled-call-pr44001.mir
The file was modifiedllvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp
Commit 96d814a5fe0a333bc53f52e8f290d1ac009c85fe by Raphael Isemann
[lldb] Remove ClangExpressionDeclMap::ResolveUnknownTypes
Summary: This is some really shady code. It's supposed to kick in after
an expression already failed and then try to look up "unknown types"
that for some undocumented reason can't be resolved during/before
parsing. Beside the fact that we never mark any type as `EVUnknownType`
in either swift-lldb or lldb (which means this code is unreachable),
this code doesn't even make the expression evaluation succeed if if
would ever be executed but instead seems to try to load more debug info
that maybe any following expression evaluations might succeed.
This patch removes ClangExpressionDeclMap::ResolveUnknownTypes and the
related data structures/checks/calls.
Reviewers: davide
Reviewed By: davide
Subscribers: aprantl, abidh, JDevlieghere, lldb-commits
Tags: #lldb
Differential Revision: https://reviews.llvm.org/D70388
The file was modifiedlldb/include/lldb/Expression/ExpressionVariable.h
The file was modifiedlldb/source/Plugins/ExpressionParser/Clang/ClangExpressionDeclMap.cpp
The file was modifiedlldb/source/Plugins/ExpressionParser/Clang/ClangExpressionParser.cpp
The file was modifiedlldb/source/Plugins/ExpressionParser/Clang/ClangExpressionDeclMap.h
Commit bbf4af3109d1958d69c3c1f2af78870207928f4b by llvm-dev
[X86][SSE] Remove XFormVExtractWithShuffleIntoLoad to prevent
legalization infinite loops (PR43971)
As detailed in PR43971/D70267, the use of
XFormVExtractWithShuffleIntoLoad causes issues where we end up in
infinite loops of extract(targetshuffle(vecload)) ->
extract(shuffle(vecload)) -> extract(vecload) ->
extract(targetshuffle(vecload)), there are just too many legalization
checks at every stage that we can't guarantee that
extract(shuffle(vecload)) -> scalarload can occur.
At the moment we see a number of minor regressions as we don't fold
extract(shuffle(vecload)) -> scalarload before legal ops, these can be
addressed in future patches and extension of X86ISelLowering's
combineExtractWithShuffle.
The file was modifiedllvm/test/CodeGen/X86/vec_extract.ll
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.cpp
The file was modifiedllvm/test/CodeGen/X86/2011-05-09-loaduse.ll
The file was modifiedllvm/test/CodeGen/X86/insertps-combine.ll
The file was modifiedllvm/test/CodeGen/X86/extractelement-load.ll
Commit 6baec971271b7dc9db610da30a192e57ff03d935 by daveb
[llvm-objdump] Print relocation addends in hexadecimal
Summary: Matches GNU objdump. Makes debugging easier for me as I'm
working out addresses from symbol+addend, so it would be good to be
calculating in a single format.
Reviewers: MaskRay, grimar, jhenderson, bd1976llvm
Reviewed By: jhenderson
Subscribers: sdardis, jrtc27, atanasyan, rupprecht, seiya, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D69997
The file was modifiedllvm/test/tools/llvm-objdump/X86/section-filter-relocs.test
The file was modifiedllvm/tools/llvm-objdump/ELFDump.cpp
The file was modifiedllvm/test/MC/AArch64/arm32-elf-relocs.s
The file was modifiedllvm/test/MC/AArch64/adr.s
The file was modifiedllvm/test/Object/objdump-relocations.test
The file was modifiedllvm/test/tools/llvm-objdump/relocations-elf.test
The file was modifiedllvm/test/MC/X86/tlsdesc-64.s
The file was modifiedllvm/test/Object/X86/objdump-disassembly-inline-relocations.test
The file was modifiedllvm/test/MC/Mips/expansion-jal-sym-pic.s
The file was modifiedllvm/test/tools/llvm-objdump/X86/elf-disassemble-relocs.test
The file was modifiedllvm/test/MC/AArch64/arm64-elf-relocs.s
The file was modifiedllvm/test/tools/llvm-objdump/X86/demangle.s
The file was modifiedllvm/test/tools/llvm-objdump/relocations-in-nonreloc.test
Commit 41ee54e5d18858c56725485ef637ad5a686368f4 by mitchell
Revert "[clang-tidy] Fix readability-redundant-string-init for
c++17/c++2a"
This reverts commit 06f3dabe4a2e85a32ade27c0769b6084c828a206.
The file was modifiedclang-tools-extra/clang-tidy/modernize/UseOverrideCheck.h
The file was modifiedclang-tools-extra/docs/ReleaseNotes.rst
The file was modifiedclang-tools-extra/docs/clang-tidy/checks/modernize-use-override.rst
The file was modifiedclang-tools-extra/clang-tidy/modernize/UseOverrideCheck.cpp
Commit f8901aff4a8f1809d62e0d676a1035099c8f734a by mitchell
Revert "[clang-tidy] modernize-use-override new option
AllowOverrideAndFinal"
This reverts commit 50e99563fb0459f5160572eef3c4e6062b8ad3f2.
The file was modifiedclang-tools-extra/test/clang-tidy/checkers/readability-redundant-string-init.cpp
The file was modifiedclang-tools-extra/test/clang-tidy/checkers/readability-redundant-string-init-msvc.cpp
The file was modifiedclang-tools-extra/clang-tidy/readability/RedundantStringInitCheck.cpp
Commit 1315f4e009b097d7d1a2a5cf116c1ad55ed5c190 by mitchell
[clang-tidy] Fix readability-redundant-string-init for c++17/c++2a
Summary:
`readability-redundant-string-init` was one of several clang-tidy checks
documented as failing for C++17. (The failure mode in C++17 is that it
changes `std::string Name = ""`; to `std::string Name = Name;`, which
actually compiles but crashes at run-time.)
Analyzing the AST with `clang -Xclang -ast-dump` showed that the outer
`CXXConstructExprs` that previously held the correct SourceRange were
being elided in C++17/2a, but the containing `VarDecl` expressions still
had all the relevant information. So this patch changes the fix to get
its source ranges from `VarDecl`.
It adds one test `std::string g = "u", h = "", i = "uuu", j = "", k;` to
confirm proper warnings and fixit replacements in a single `DeclStmt`
where some strings require replacement and others don't. The
readability-redundant-string-init.cpp and
readability-redundant-string-init-msvc.cpp tests now pass for
C++11/14/17/2a.
Reviewers: gribozavr, etienneb, alexfh, hokein, aaron.ballman,
gribozavr2
Patch by: poelmanc
Subscribers: NoQ, MyDeveloperDay, Eugene.Zelenko, dylanmckay,
cfe-commits
Tags: #clang, #clang-tools-extra
Differential Revision: https://reviews.llvm.org/D69238
The file was modifiedclang-tools-extra/clang-tidy/readability/RedundantStringInitCheck.cpp
The file was modifiedclang-tools-extra/test/clang-tidy/checkers/readability-redundant-string-init-msvc.cpp
The file was modifiedclang-tools-extra/test/clang-tidy/checkers/readability-redundant-string-init.cpp
Commit df11117086fe8effdc5abe6a9955f659876dc64f by mitchell
[clang-tidy] modernize-use-override new option AllowOverrideAndFinal
Summary: In addition to adding `override` wherever possible,
clang-tidy's `modernize-use-override` nicely removes `virtual` when
`override` or `final` is specified, and further removes override when
final is specified. While this is great default behavior, when code
needs to be compiled with gcc at high warning levels that include `gcc
-Wsuggest-override` or `gcc -Werror=suggest-override`, clang-tidy's
removal of the redundant `override` keyword causes gcc to emit a warning
or error. This discrepancy / conflict has been noted by others including
a comment on Stack Overflow and by Mozilla's Firefox developers.
This patch adds an AllowOverrideAndFinal option defaulting to 0 - thus
preserving current behavior - that when enabled allows both `override`
and `final` to co-exist, while still fixing all other issues.
The patch includes a test file verifying all combinations of
virtual/override/final, and mentions the new option in the release
notes.
Reviewers: alexfh, djasper, JonasToth
Patch by: poelmanc
Subscribers: JonasToth, cfe-commits
Tags: #clang
Differential Revision: https://reviews.llvm.org/D70165
The file was modifiedclang-tools-extra/docs/ReleaseNotes.rst
The file was addedclang-tools-extra/test/clang-tidy/checkers/modernize-use-override-allow-override-and-final.cpp
The file was modifiedclang-tools-extra/clang-tidy/modernize/UseOverrideCheck.cpp
The file was modifiedclang-tools-extra/clang-tidy/modernize/UseOverrideCheck.h
The file was modifiedclang-tools-extra/docs/clang-tidy/checks/modernize-use-override.rst
Commit f6ffe6fc9d9b8b0e197500b5b61f3e8d55599d7a by Raphael Isemann
[lldb] Also test Get[De]mangledName of SBType in
TestSBTypeClassMembers.py
I just used the mangled names as this test is anyway a Darwin-only
ObjC++ test. We probably should also test this on other platforms but
that will be another commit as we need to untangle the ObjC and C++
parts first.
The file was modifiedlldb/packages/Python/lldbsuite/test/python_api/class_members/TestSBTypeClassMembers.py
Commit ef5e3b85eecc26e672fe559089a89062cbeda4b5 by evgeny
[ThinLTO] Simplify code. NFC
The file was modifiedllvm/lib/LTO/LTO.cpp
Commit 3de7cc9fc01c8eb19eb344691c4747def1e00311 by thakis
Revert "[RISCV] Support mutilib in baremetal environment"
This reverts commit b6d7bbfa004310777cd41448ffc377aea082fc8c.
Driver/riscv64-toolchain.c fails on Windows.
The file was removedclang/test/Driver/Inputs/multilib_riscv_elf_sdk/lib/gcc/riscv64-unknown-elf/8.2.0/rv32iac/ilp32/crtbegin.o
The file was removedclang/test/Driver/Inputs/multilib_riscv_elf_sdk/lib/gcc/riscv64-unknown-elf/8.2.0/rv64imac/lp64/crtbegin.o
The file was modifiedclang/test/Driver/riscv32-toolchain.c
The file was removedclang/test/Driver/Inputs/multilib_riscv_elf_sdk/lib/gcc/riscv64-unknown-elf/8.2.0/rv32imac/ilp32/crtbegin.o
The file was removedclang/test/Driver/Inputs/multilib_riscv_elf_sdk/riscv64-unknown-elf/lib/rv32iac/ilp32/crt0.o
The file was removedclang/test/Driver/Inputs/multilib_riscv_elf_sdk/lib/gcc/riscv64-unknown-elf/8.2.0/rv64imac/lp64/crtend.o
The file was removedclang/test/Driver/Inputs/multilib_riscv_elf_sdk/lib/gcc/riscv64-unknown-elf/8.2.0/rv64imafdc/lp64d/crtend.o
The file was removedclang/test/Driver/Inputs/multilib_riscv_elf_sdk/lib/gcc/riscv64-unknown-elf/8.2.0/rv32imafc/ilp32f/crtbegin.o
The file was removedclang/test/Driver/Inputs/multilib_riscv_elf_sdk/lib/gcc/riscv64-unknown-elf/8.2.0/crtbegin.o
The file was removedclang/test/Driver/Inputs/multilib_riscv_elf_sdk/lib/gcc/riscv64-unknown-elf/8.2.0/crtend.o
The file was modifiedclang/test/Driver/riscv64-toolchain.c
The file was removedclang/test/Driver/Inputs/multilib_riscv_elf_sdk/lib/gcc/riscv64-unknown-elf/8.2.0/rv32i/ilp32/crtbegin.o
The file was removedclang/test/Driver/Inputs/multilib_riscv_elf_sdk/riscv64-unknown-elf/bin/ld
The file was removedclang/test/Driver/Inputs/multilib_riscv_elf_sdk/riscv64-unknown-elf/lib/crt0.o
The file was removedclang/test/Driver/Inputs/multilib_riscv_elf_sdk/riscv64-unknown-elf/lib/rv32i/ilp32/crt0.o
The file was removedclang/test/Driver/Inputs/multilib_riscv_elf_sdk/riscv64-unknown-elf/lib/rv32im/ilp32/crt0.o
The file was modifiedclang/lib/Driver/ToolChains/RISCVToolchain.cpp
The file was removedclang/test/Driver/Inputs/multilib_riscv_elf_sdk/lib/gcc/riscv64-unknown-elf/8.2.0/rv32imac/ilp32/crtend.o
The file was removedclang/test/Driver/Inputs/multilib_riscv_elf_sdk/lib/gcc/riscv64-unknown-elf/8.2.0/rv32i/ilp32/crtend.o
The file was removedclang/test/Driver/Inputs/multilib_riscv_elf_sdk/lib/gcc/riscv64-unknown-elf/8.2.0/rv32im/ilp32/crtbegin.o
The file was removedclang/test/Driver/Inputs/multilib_riscv_elf_sdk/riscv64-unknown-elf/lib/rv64imac/lp64/crt0.o
The file was removedclang/test/Driver/Inputs/multilib_riscv_elf_sdk/riscv64-unknown-elf/lib/rv64imafdc/lp64d/crt0.o
The file was removedclang/test/Driver/Inputs/multilib_riscv_elf_sdk/lib/gcc/riscv64-unknown-elf/8.2.0/rv64imafdc/lp64d/crtbegin.o
The file was removedclang/test/Driver/Inputs/multilib_riscv_elf_sdk/riscv64-unknown-elf/lib/rv32imac/ilp32/crt0.o
The file was modifiedclang/lib/Driver/ToolChains/Gnu.cpp
The file was removedclang/test/Driver/Inputs/multilib_riscv_elf_sdk/lib/gcc/riscv64-unknown-elf/8.2.0/rv32im/ilp32/crtend.o
The file was removedclang/test/Driver/Inputs/multilib_riscv_elf_sdk/riscv64-unknown-elf/lib/rv32imafc/ilp32f/crt0.o
The file was removedclang/test/Driver/Inputs/multilib_riscv_elf_sdk/lib/gcc/riscv64-unknown-elf/8.2.0/rv32imafc/ilp32f/crtend.o
The file was removedclang/test/Driver/Inputs/multilib_riscv_elf_sdk/lib/gcc/riscv64-unknown-elf/8.2.0/rv32iac/ilp32/crtend.o
Commit c7f85f3a84a5d14a13bd8fe6eef93ae34343cf8a by llvm-dev
[PowerPC] Regenerate vsx_insert_extract_le.ll tests
The file was modifiedllvm/test/CodeGen/PowerPC/vsx_insert_extract_le.ll
Commit fed8c068922319cc6a84fd08e75eccf7376b21c4 by llvm-dev
[ARM] Regenerate vector lane store tests
The file was modifiedllvm/test/CodeGen/ARM/vstlane.ll
Commit 6de85095ed7d8f161a7f39422d42b5bc2d2dcb98 by lebedev.ri
[NFC][X86] Fixup comment in CodeGen/X86/cmov.ll
As noted in post-commit review for
https://reviews.llvm.org/D59035#inline-631659
The file was modifiedllvm/test/CodeGen/X86/cmov.ll
Commit 6fd11b14f604914df4f777f4c7ff20dbbc50877b by dfukalov
[AMDGPU] Tune inlining parameters for AMDGPU target (part 2)
Summary: Most of IR instructions got better code size estimations after
commit 47a5c36b. So default parameters values should be updated to
improve inlining and unrolling for the target.
Reviewers: rampitec, arsenm
Reviewed By: rampitec
Subscribers: kzhuravl, jvesely, wdng, nhaehnle, yaxunl, dstuttard, tpr,
t-tye, hiraditya, zzheng, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D70391
The file was modifiedllvm/test/CodeGen/AMDGPU/amdgpu-inline.ll
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPUTargetTransformInfo.cpp
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPUInline.cpp
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPUTargetTransformInfo.h
The file was modifiedllvm/test/Transforms/LoopUnroll/AMDGPU/unroll-for-private.ll
Commit 714445e406f043e861024f394fd58eb26c15e51a by Raphael Isemann
Fix modules build by adding missing includes
The file was modifiedllvm/include/llvm/Analysis/Utils/Local.h
The file was modifiedllvm/include/llvm/CodeGen/GlobalISel/InstructionSelectorImpl.h
Commit b696b9dba7b66307c225c2612def8bbb328805b7 by arsenm2
DAG: Add function context to isFMAFasterThanFMulAndFAdd
AMDGPU needs to know the FP mode for the function to answer this
correctly when this is removed from the subtarget.
AArch64 had to make this more complicated by using this from an IR hook,
so add an IR typed overload.
The file was modifiedllvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
The file was modifiedllvm/lib/Target/AArch64/AArch64ISelLowering.h
The file was modifiedllvm/lib/Target/NVPTX/NVPTXISelLowering.h
The file was modifiedllvm/lib/Target/PowerPC/PPCISelLowering.cpp
The file was modifiedllvm/lib/Target/AMDGPU/SIISelLowering.cpp
The file was modifiedllvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
The file was modifiedllvm/lib/Target/AMDGPU/SIISelLowering.h
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.cpp
The file was modifiedllvm/lib/Target/ARM/ARMISelLowering.cpp
The file was modifiedllvm/lib/Target/Hexagon/HexagonISelLowering.h
The file was modifiedllvm/include/llvm/CodeGen/TargetLowering.h
The file was modifiedllvm/lib/Target/Hexagon/HexagonISelLowering.cpp
The file was modifiedllvm/lib/Target/SystemZ/SystemZISelLowering.h
The file was modifiedllvm/lib/Target/AArch64/AArch64ISelLowering.cpp
The file was modifiedllvm/lib/Target/ARM/ARMISelLowering.h
The file was modifiedllvm/lib/Target/PowerPC/PPCISelLowering.h
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.h
The file was modifiedllvm/lib/CodeGen/GlobalISel/IRTranslator.cpp
The file was modifiedllvm/lib/Target/SystemZ/SystemZISelLowering.cpp
Commit c54d21c848d350e85cd8f95a725fc12f6fa3ab19 by Raphael Isemann
[lldb][NFC] Early exit in IRExecutionUnit::GetStaticInitializers
The file was modifiedlldb/source/Expression/IRExecutionUnit.cpp
Commit 765b1250f6845e765abf01908b122dab441c2a42 by sam.mccall
[clangd] Untangle Hover from XRefs, move into own file.
Summary: This is mostly mechanical, with a few exceptions:
- getDeducedType moved into AST.h where it belongs. It now takes
  ASTContext instead of ParsedAST, and avoids using the preprocessor.
- hover now uses SelectionTree directly rather than via
  getDeclAtPosition helper
- hover on 'auto' used to find the decl that contained the 'auto' and
  use that to set Kind and documentation for the hover result.
  Now we use targetDecl() to find the decl matching the deduced type
instead.
  This changes tests, e.g. 'variable' -> class for auto on lambdas.
  I think this is better, but the motivation was to avoid depending on
  the internals of DeducedTypeVisitor. This functionality is removed
  from the visitor.
Reviewers: kadircet
Subscribers: mgorny, ilya-biryukov, MaskRay, jkorous, arphaman,
usaxena95, cfe-commits
Tags: #clang
Differential Revision: https://reviews.llvm.org/D70357
The file was modifiedclang-tools-extra/clangd/unittests/ASTTests.cpp
The file was modifiedclang-tools-extra/clangd/CMakeLists.txt
The file was addedclang-tools-extra/clangd/Hover.cpp
The file was modifiedclang-tools-extra/clangd/unittests/CMakeLists.txt
The file was addedclang-tools-extra/clangd/unittests/HoverTests.cpp
The file was modifiedclang-tools-extra/clangd/refactor/tweaks/ExpandAutoType.cpp
The file was modifiedclang-tools-extra/clangd/unittests/XRefsTests.cpp
The file was modifiedclang-tools-extra/clangd/AST.h
The file was addedclang-tools-extra/clangd/Hover.h
The file was modifiedclang-tools-extra/clangd/AST.cpp
The file was modifiedclang-tools-extra/clangd/XRefs.h
The file was modifiedclang-tools-extra/clangd/ClangdServer.h
The file was modifiedclang-tools-extra/clangd/XRefs.cpp
Commit c9b87981d20aa572a08ffde6209cb2575cf16407 by 1.int32
[clang-tidy] DefaultOperatorNewCheck test fixes.
The file was removedclang-tools-extra/test/clang-tidy/cert-mem57-cpp-cpp17.cpp
The file was addedclang-tools-extra/test/clang-tidy/checkers/cert-mem57-cpp-cpp17.cpp
The file was removedclang-tools-extra/test/clang-tidy/cert-mem57-cpp.cpp
The file was addedclang-tools-extra/test/clang-tidy/checkers/cert-mem57-cpp.cpp
Commit ea23b6428b88ed50a2cfc91b783f627fa139bb36 by arsenm2
AMDGPU: Be explicit about denormal mode in MIR tests
Start checking the machine function in GlobalISel instead of the target
directly.
This temporarily breaks fcanonicalize selection in GlobalISel.
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-fcanonicalize.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-fmad.s16.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/omod-nsz-flag.mir
The file was removedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-fmad.mir
The file was addedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-fmad.s32.mir
The file was addedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-fmad.s64.mir
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-fdiv.mir
Commit db0ed3e429b55d1730d1ecc253b0643de7fca099 by arsenm2
AMDGPU: Refactor treatment of denormal mode
Start moving towards treating this as a property of the calling
convention, and not the subtarget. The default denormal mode should not
be part of the subtarget, and be moved into a separate function
attribute.
This patch is still NFC. The denormal mode remains as a subtarget
feature for now, but make the necessary changes to switch to using an
attribute.
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPUMachineFunction.h
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPUISelLowering.cpp
The file was modifiedllvm/lib/Target/AMDGPU/SIFoldOperands.cpp
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPUInstructions.td
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPUMachineFunction.cpp
The file was modifiedllvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.cpp
The file was modifiedllvm/lib/Target/AMDGPU/SIMachineFunctionInfo.cpp
The file was modifiedllvm/lib/Target/AMDGPU/SIMachineFunctionInfo.h
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPUISelDAGToDAG.cpp
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPUTargetTransformInfo.h
The file was modifiedllvm/lib/Target/AMDGPU/SIISelLowering.cpp
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPUCodeGenPrepare.cpp
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPUAsmPrinter.cpp
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPUTargetTransformInfo.cpp
The file was modifiedllvm/lib/Target/AMDGPU/R600ISelLowering.cpp
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-fcanonicalize.mir
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPUSubtarget.h
The file was modifiedllvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.h
The file was modifiedllvm/lib/Target/AMDGPU/SIISelLowering.h
Commit 33d93c3d0b4a331632902f5fb9874f4e021a2f58 by sam.mccall
[clangd] Show values of more expressions on hover
Reviewers: kadircet
Subscribers: ilya-biryukov, MaskRay, jkorous, arphaman, usaxena95,
cfe-commits
Tags: #clang
Differential Revision: https://reviews.llvm.org/D70359
The file was modifiedclang-tools-extra/clangd/unittests/HoverTests.cpp
The file was modifiedclang-tools-extra/clangd/Hover.cpp
Commit 254b4f250007ef9f2d2377eb912963beafa39754 by simon.tatham
[ARM,MVE] Add intrinsics for scalar shifts.
This fills in the small family of MVE intrinsics that have nothing to do
with vectors: they implement bit-shift operations on 32- or 64-bit
values held in one or two general-purpose registers. Most of these shift
operations saturate if shifting left, and round to nearest if shifting
right, although LSLL and ASRL behave like ordinary shifts.
When these instructions take a variable shift count in a register, they
pay attention to its sign, so that (for example) LSLL or UQRSHLL will
shift left if given a positive number but right if given a negative one.
That makes even LSLL and ASRL different enough from standard LLVM IR
shift semantics that I couldn't see any better alternative than to
simply model the whole family as a set of MVE-specific IR intrinsics.
(The //immediate// forms of LSLL and ASRL, on the other hand, do behave
exactly like a standard IR shift of a 64-bit value. In fact, those forms
don't have ACLE intrinsics defined at all, because you can just write an
ordinary C shift operation if you want one of those.)
The 64-bit shifts have to be instruction-selected in C++, because they
deliver two output values. But the 32-bit ones are simple enough that I
could write a DAG isel pattern directly into each Instruction record.
Reviewers: ostannard, MarkMurrayARM, dmgreen
Reviewed By: dmgreen
Subscribers: kristof.beyls, hiraditya, cfe-commits, llvm-commits
Tags: #clang, #llvm
Differential Revision: https://reviews.llvm.org/D70319
The file was modifiedclang/include/clang/Basic/arm_mve_defs.td
The file was modifiedllvm/include/llvm/IR/IntrinsicsARM.td
The file was modifiedllvm/lib/Target/ARM/ARMInstrMVE.td
The file was modifiedclang/test/CodeGen/arm-mve-intrinsics/scalar-shifts.c
The file was modifiedclang/include/clang/Basic/arm_mve.td
The file was modifiedllvm/lib/Target/ARM/ARMISelDAGToDAG.cpp
The file was modifiedllvm/test/CodeGen/Thumb2/mve-intrinsics/scalar-shifts.ll
Commit 4a6d03ad0e00c75c18d5740438d49918f99cb4f2 by Raphael Isemann
[lldb] Add logging to IRExecutionUnit::GetStaticInitializers
The file was modifiedlldb/source/Expression/IRExecutionUnit.cpp
Commit 6265be2782d74216a3b42aa28cc43e3a9a4f658c by spatel
[SLP] add test for reduction miscompile; NFC
See D70148 for discussion.
The file was modifiedllvm/test/Transforms/SLPVectorizer/X86/reduction.ll
Commit e6c55fbe0199f1e8db3ca00f5461a3f7dd66f178 by daveb
Fixup AVR tests to reflect changes in addend format in llvm-objdump
Summary: Changes to llvm-objdump made in D69997
Reviewers: thakis, jhenderson, grimar
Reviewed By: thakis
Subscribers: dylanmckay, Jim, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D70438
The file was modifiedllvm/test/MC/AVR/out-of-range-fixups/adiw-pass.s
The file was modifiedllvm/test/MC/AVR/out-of-range-fixups/sbi-pass.s
The file was modifiedllvm/test/MC/AVR/out-of-range-fixups/brbs-pass.s
The file was modifiedllvm/test/MC/AVR/out-of-range-fixups/in-pass.s
The file was modifiedllvm/test/MC/AVR/out-of-range-fixups/lds-pass.s
The file was modifiedllvm/test/MC/AVR/relocations.s
The file was modifiedllvm/test/MC/AVR/out-of-range-fixups/call-pass.s
The file was modifiedllvm/test/MC/AVR/out-of-range-fixups/rjmp-pass.s
Commit 41bac76da873bf9b4b5d1353299ca68b4ad26ff3 by llvmgnsyncbot
gn build: Merge 765b1250f68
The file was modifiedllvm/utils/gn/secondary/clang-tools-extra/clangd/unittests/BUILD.gn
The file was modifiedllvm/utils/gn/secondary/clang-tools-extra/clangd/BUILD.gn
Commit 39de82ecc9c2e461e1318ed9926286a1eed2be3f by spatel
[SLP] fix insertion point for min/max reduction
As discussed in D70148 (and caused a revert of the original commit): if
we insert at the select, then we can produce invalid IR because the
replacement for the compare may have uses before the select.
The file was modifiedllvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
The file was modifiedllvm/test/Transforms/SLPVectorizer/X86/reduction.ll
Commit 980653621ef563df41f1d09a1ac8c58708f79930 by mitchell
[clang-tidy] Give readability-redundant-member-init an option
IgnoreBaseInCopyConstructors to avoid breaking code with gcc
-Werror=extra
Summary: readability-redundant-member-init removes redundant /
unnecessary member and base class initialization. Unfortunately for the
specific case of a copy constructor's initialization of a base class,
gcc at strict warning levels warns if "base class is not initialized in
the copy constructor of a derived class".
This patch adds an option `IgnoreBaseInCopyConstructors` defaulting to 0
(thus maintaining current behavior by default) to skip the specific case
of removal of redundant base class initialization in the copy
constructor. Enabling this option enables the resulting code to continue
to compile successfully under `gcc -Werror=extra`. New test cases
`WithCopyConstructor1` and `WithCopyConstructor2` in
clang-tools-extra/test/clang-tidy/readability-redundant-member-init.cpp
show that it removes redundant members even from copy constructors.
Reviewers: malcolm.parsons, alexfh, hokein, aaron.ballman, lebedev.ri
Patch by: poelmanc
Subscribers: mgehre, lebedev.ri, cfe-commits
Tags: #clang, #clang-tools-extra
Differential revision: https://reviews.llvm.org/D69145
The file was modifiedclang-tools-extra/test/clang-tidy/checkers/readability-redundant-member-init.cpp
The file was modifiedclang-tools-extra/docs/clang-tidy/checks/readability-redundant-member-init.rst
The file was modifiedclang-tools-extra/clang-tidy/readability/RedundantMemberInitCheck.h
The file was modifiedclang-tools-extra/clang-tidy/readability/RedundantMemberInitCheck.cpp
The file was modifiedclang-tools-extra/docs/ReleaseNotes.rst
Commit c9edaa828eb84a62af2042a1a64168e32ea32924 by jasonliu
[AIX][XCOFF] Write Function descriptors and TOC base to data section
This patch implements writing function descriptors and TOC base into
data section, and also add function descriptors(both csect and label)
and TOC base symbols to the symbol table.
The file was modifiedllvm/lib/MC/XCOFFObjectWriter.cpp
The file was addedllvm/test/CodeGen/PowerPC/aix-func-dsc-gen.ll
Commit 62871305c28f3102d5d06da929379674f2d40d04 by mitchell
[NFC] Attempting to fix sphinx build failure with badly encoded
characters from incoming patch.
The file was modifiedclang-tools-extra/docs/ReleaseNotes.rst
Commit b81cc6032902c810e0fde485d3092a947dc38541 by thomasp
[clang][NFC] Make various uses of Regex const
The const-correctness of match() was fixed in rL372764, which allows
uses of Regex objects to be const in cases they couldn't be before. This
patch tightens up the const-ness of Regex in various such cases.
Reviewers: thopre
Reviewed By: thopre
Subscribers: cfe-commits
Tags: #clang
Differential Revision: https://reviews.llvm.org/D68155
The file was modifiedclang/lib/Format/NamespaceEndCommentsFixer.cpp
The file was modifiedclang/lib/Format/BreakableToken.h
The file was modifiedclang/lib/Format/BreakableToken.cpp
The file was modifiedclang/include/clang/Tooling/Inclusions/HeaderIncludes.h
The file was modifiedclang/lib/Format/UnwrappedLineParser.cpp
The file was modifiedclang/tools/clang-refactor/TestSupport.cpp
Commit 6c2151bf4c829958891e65a4cc396daa6d308eb0 by pavel
[cmake] Disable GCC 9's -Winit-list-lifetime warning in ArrayRef
Summary: This is a new warning which fires when one stores a reference
to the initializer_list contents in a way which may outlive the
initializer_list which it came from. In llvm this warning is triggered
whenever someone uses the initializer_list ArrayRef constructor.
This is indeed a dangerous thing to do (I myself was bitten by that at
least once), but it is not more dangerous than calling other ArrayRef
constructors with temporary objects -- something which we are used to
and have accepted as a tradeoff for ArrayRef's efficiency.
Currently, this warnings generates so much output that it completely
obscures any actionable warnings, so this patch disables it.
Reviewers: rnk, aaron.ballman
Subscribers: mgorny, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D70122
The file was modifiedllvm/include/llvm/ADT/ArrayRef.h
Commit 7fe9435dc88050ee78eb1d4adec87610dce468f7 by arsenm2
Work on cleaning up denormal mode handling
Cleanup handling of the denormal-fp-math attribute. Consolidate places
checking the allowed names in one place.
This is in preparation for introducing FP type specific variants of the
denormal-fp-mode attribute. AMDGPU will switch to using this in place of
the current hacky use of subtarget features for the denormal mode.
Introduce a new header for dealing with FP modes. The constrained
intrinsic classes define related enums that should also be moved into
this header for uses in other contexts.
The verifier could use a check to make sure the denorm-fp-mode attribute
is sane, but there currently isn't one.
Currently, DAGCombiner incorrectly asssumes non-IEEE behavior by default
in the one current user. Clang must be taught to start emitting this
attribute by default to avoid regressions when this is switched to
assume ieee behavior if the attribute isn't present.
The file was modifiedllvm/include/llvm/CodeGen/SelectionDAG.h
The file was modifiedllvm/lib/CodeGen/MachineFunction.cpp
The file was addedllvm/include/llvm/ADT/FloatingPointMode.h
The file was modifiedllvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
The file was addedllvm/unittests/ADT/FloatingPointMode.cpp
The file was modifiedclang/lib/CodeGen/CGCall.cpp
The file was modifiedclang/lib/Frontend/CompilerInvocation.cpp
The file was modifiedllvm/include/llvm/CodeGen/MachineFunction.h
The file was modifiedllvm/unittests/ADT/CMakeLists.txt
The file was modifiedclang/include/clang/Basic/CodeGenOptions.h
Commit 50b17de05dbcd4d172d44e2f9847ff580fa791cd by llvmgnsyncbot
gn build: Merge 7fe9435dc88
The file was modifiedllvm/utils/gn/secondary/llvm/unittests/ADT/BUILD.gn
Commit 4f7dce78c2372615b306435ba3d02ec684a6761c by mitchell
[NFC] Attempting to fix sphinx build failure with badly encoded
characters from incoming patch.
The file was modifiedclang-tools-extra/docs/clang-tidy/checks/readability-redundant-member-init.rst
Commit 3a76b8a538c0d20efe823f03a133c778e842270e by Andrey.Churbanov
Fix openmp on PowerPC64-BE-ELFv2 ABI on FreeBSD.
Patch by adalava (Alfredo Dal'Ava J.nior)
Differential Revision: https://reviews.llvm.org/D67190
The file was modifiedopenmp/runtime/src/kmp_platform.h
The file was modifiedopenmp/runtime/src/z_Linux_asm.S
Commit 6b0eb5a6727590472e2e9cbf65fa2d7c3a18d2b5 by i
[ELF] Improve --gc-sections compatibility with GNU ld regarding section
groups
Based on D70020 by serge-sans-paille.
The ELF spec says:
> Furthermore, there may be internal references among these sections
that would not make sense if one of the sections were removed or
replaced by a duplicate from another object. Therefore, such groups must
be included or omitted from the linked object as a unit. A section
cannot be a member of more than one group.
GNU ld has 2 behaviors that we don't have:
- Group members (nextInSectionGroup != nullptr) are subject to garbage
collection.
This includes non-SHF_ALLOC SHT_NOTE sections.
In particular, discarding non-SHF_ALLOC SHT_NOTE sections is an
expected behavior by the Annobin
project. See

https://developers.redhat.com/blog/2018/02/20/annobin-storing-information-binaries/
for more information.
- Groups members are retained or discarded as a unit.
Members may have internal references that are not expressed as
SHF_LINK_ORDER, relocations, etc. It seems that we should be more
conservative here:
if a section is marked live, mark all the other member within the
group.
Both behaviors are reasonable. This patch implements them.
A new field InputSectionBase::nextInSectionGroup tracks the next member
within a group. on ELF64, this increases sizeof(InputSectionBase) froms
144 to 152.
InputSectionBase::dependentSections tracks section dependencies, which
is used by both --gc-sections and /DISCARD/. We can't overload it for
the "next member" semantic, because we should allow /DISCARD/ to discard
sections independent of --gc-sections (GNU ld behavior). This behavior
may be reasonably used by `/DISCARD/ : { *(.ARM.exidx*) }` or `/DISCARD/
: { *(.note*) }` (new test `linkerscript/discard-group.s`).
Reviewed By: ruiu
Differential Revision: https://reviews.llvm.org/D70146
The file was modifiedlld/ELF/MarkLive.cpp
The file was addedlld/test/ELF/linkerscript/discard-group.s
The file was modifiedlld/ELF/InputFiles.cpp
The file was addedlld/test/ELF/gc-sections-group.s
The file was modifiedlld/ELF/InputSection.h
Commit 6e418decd936a3e22dec5cebc77ecb86dc7f37c3 by jdenny.ornl
[FileCheck] Use lit's internal shell for the test suite
An advantage is that there are less portability concerns when writing
tests.  For example, `-u` is not supported by all implementations of
`env`, but lit's internal shell provides its own `env` that supports
`-u`.
A disadvantage is that some shell constructs, such as parentheses, are
not supported, but FileCheck's test suite currently doesn't require such
constructs.
For comparison, lit configures its test suite in the same manner.  See
`llvm/utils/lit/tests/lit.cfg`.
Reviewed By: rnk
Differential Revision: https://reviews.llvm.org/D70278
The file was modifiedllvm/test/FileCheck/lit.local.cfg
Commit dd471dbe99a7e017357809151df56f2d4c3e7a31 by yitzhakm
[libTooling] Extend `buildASTFromCodeWithArgs` to take files argument.
Summary: Adds an optional parameter to `buildASTFromCodeWithArgs` that
allows the user to pass additional files that the main code needs to
compile. This change makes
`buildASTFromCodeWithArgs` consistent with `runToolOnCodeWithArgs`.
Patch by Alexey Eremin.
Reviewers: gribozavr
Subscribers: cfe-commits
Tags: #clang
Differential Revision: https://reviews.llvm.org/D70175
The file was modifiedclang/include/clang/Tooling/Tooling.h
The file was modifiedclang/lib/Tooling/Tooling.cpp
Commit b0561b3346e7bf0ae974995ca95b917eebde18e1 by tyker
[NFC] Refactor representation of materialized temporaries
Summary: this patch refactor representation of materialized temporaries
to prevent an issue raised by rsmith in
https://reviews.llvm.org/D63640#inline-612718
Reviewers: rsmith, martong, shafik
Reviewed By: rsmith
Subscribers: thakis, sammccall, ilya-biryukov, rnkovacs, arphaman,
cfe-commits
Tags: #clang
Differential Revision: https://reviews.llvm.org/D69360
The file was modifiedclang/lib/Sema/TreeTransform.h
The file was modifiedclang/lib/StaticAnalyzer/Checkers/IteratorChecker.cpp
The file was modifiedclang/lib/AST/StmtPrinter.cpp
The file was modifiedclang/lib/AST/DeclCXX.cpp
The file was modifiedclang/lib/AST/ExprCXX.cpp
The file was modifiedclang/lib/CodeGen/CodeGenModule.cpp
The file was modifiedclang/include/clang/AST/RecursiveASTVisitor.h
The file was modifiedclang/lib/AST/ItaniumMangle.cpp
The file was modifiedclang/lib/Analysis/Consumed.cpp
The file was modifiedclang/lib/Sema/SemaChecking.cpp
The file was modifiedclang-tools-extra/clang-tidy/abseil/StrCatAppendCheck.cpp
The file was modifiedclang-tools-extra/clang-tidy/modernize/AvoidBindCheck.cpp
The file was modifiedclang/lib/CodeGen/CGExprAgg.cpp
The file was modifiedclang/include/clang/ASTMatchers/ASTMatchers.h
The file was modifiedclang/lib/Sema/SemaInit.cpp
The file was modifiedclang/lib/Sema/SemaOpenMP.cpp
The file was modifiedclang-tools-extra/clang-tidy/readability/NonConstParameterCheck.cpp
The file was modifiedclang/lib/AST/DeclBase.cpp
The file was modifiedclang/lib/Sema/SemaExpr.cpp
The file was modifiedclang/include/clang/AST/ExprCXX.h
The file was modifiedclang/lib/AST/ExprConstant.cpp
The file was modifiedclang/include/clang/Sema/Template.h
The file was modifiedclang/include/clang/AST/ASTContext.h
The file was modifiedclang/lib/Serialization/ASTCommon.cpp
The file was modifiedclang/lib/Sema/JumpDiagnostics.cpp
The file was modifiedclang/lib/AST/ASTImporter.cpp
The file was modifiedclang/lib/CodeGen/CGExprConstant.cpp
The file was modifiedclang/lib/AST/ASTContext.cpp
The file was modifiedclang/lib/CodeGen/CGDecl.cpp
The file was modifiedclang/include/clang/AST/DeclCXX.h
The file was modifiedclang/include/clang/Serialization/ASTBitCodes.h
The file was modifiedclang-tools-extra/clang-tidy/modernize/LoopConvertUtils.cpp
The file was modifiedclang/lib/CodeGen/CGExpr.cpp
The file was modifiedclang/lib/StaticAnalyzer/Core/ExprEngine.cpp
The file was modifiedclang/lib/Serialization/ASTWriterStmt.cpp
The file was modifiedclang/tools/libclang/CIndex.cpp
The file was modifiedclang/lib/StaticAnalyzer/Core/ExprEngineCXX.cpp
The file was modifiedclang/lib/AST/Expr.cpp
The file was modifiedclang/lib/Serialization/ASTReaderStmt.cpp
The file was modifiedclang-tools-extra/clang-tidy/performance/ImplicitConversionInLoopCheck.cpp
The file was modifiedclang/lib/Analysis/ThreadSafetyCommon.cpp
The file was modifiedclang/include/clang/Basic/DeclNodes.td
The file was modifiedclang/lib/Sema/SemaStmt.cpp
The file was modifiedclang/lib/Serialization/ASTReaderDecl.cpp
The file was modifiedclang/lib/Serialization/ASTWriterDecl.cpp
The file was modifiedclang/lib/Analysis/CFG.cpp
Commit 4681e2e43420fa10e4e1c17eb78649922678a440 by jonchesterfield
[nfc][libomptarget] Write amdgcn macros in terms of compiler intrinsics
The file was modifiedopenmp/libomptarget/deviceRTLs/amdgcn/src/target_impl.h
Commit 1d943ae44c430430c8820464abbd4edb5467fcf4 by a.bataev
[OPENMP]Rename function, NFC.
Change the name of the CGOpenMPRuntime::emitOMPIfClause to
CGOpenMPRuntime::emitIfClause.
The file was modifiedclang/lib/CodeGen/CGOpenMPRuntime.cpp
The file was modifiedclang/lib/CodeGen/CGOpenMPRuntime.h
The file was modifiedclang/lib/CodeGen/CGOpenMPRuntimeNVPTX.cpp
Commit ce5de93e838f7391760ba2956c7e0ae5d203cb6f by i
[ELF] Disallow out-of-range section group indices after D70146
Exposed by invalid/sht-group-wrong-section.test
http://45.33.8.238/win/2613/step_9.txt
The file was modifiedlld/ELF/InputFiles.cpp
Commit e531750c6cf9ab6ca987ffbfe100b1d766269eb5 by arsenm2
clang: Add -fconvergent-functions flag
The CUDA builtin library is apparently compiled in C++ mode, so the
assumption of convergent needs to be made in a typically non-SPMD
language. The functions in the library should still be assumed
convergent. Currently they are not, which is potentially incorrect and
this happens to work after the library is linked.
The file was addedclang/test/CodeGen/convergent-functions.cpp
The file was modifiedclang/include/clang/Basic/LangOptions.def
The file was modifiedclang/test/CodeGenCUDA/propagate-metadata.cu
The file was modifiedclang/include/clang/Driver/Options.td
The file was modifiedclang/lib/Frontend/CompilerInvocation.cpp
The file was modifiedclang/include/clang/Basic/LangOptions.h
Commit b9a92206b6ef8b369dc266d8cb70553ebef293bd by Dan Liew
[Symbolizers] On Darwin compute function offset when possible.
Summary: The sanitizer symbolizers support printing the function offset
(difference between pc and function start) of a stackframe using the
`%q` format specifier.
Unfortunately this didn't actually work because neither the atos or
dladdr symbolizer set the `AddressInfo::function_offset` field.
This patch teaches both symbolizers to try to compute the function
offset. In the case of the atos symbolizer, atos might not report the
function offset (e.g. it reports a source location instead) so in this
case it fallsback to using `dladdr()` to compute the function offset.
Two test cases are included.
rdar://problem/56695185
Reviewers: kubamracek, yln
Subscribers: #sanitizers, llvm-commits
Tags: #sanitizers, #llvm
Differential Revision: https://reviews.llvm.org/D69549
The file was modifiedcompiler-rt/test/asan/TestCases/Darwin/asan-symbolize-partial-report-no-external-symbolizer.cpp
The file was addedcompiler-rt/test/sanitizer_common/TestCases/Darwin/symbolizer-function-offset-dladdr.cpp
The file was modifiedcompiler-rt/lib/sanitizer_common/sanitizer_symbolizer_mac.cpp
The file was addedcompiler-rt/test/sanitizer_common/TestCases/Darwin/symbolizer-function-offset-atos.cpp
Commit b117ec8be0f350f6a644de28a9871cf0183a1c54 by Jonas Devlieghere
[LLDB] Fix formatting in the driver (NFC)
The file was modifiedlldb/tools/driver/Driver.cpp
Commit f55cd39f19134392b16bc1fd6c558214778a3bb8 by alexandre.ganea
[C-index] Fix test when using Debug target & MSVC STL
Avoids a deadlock in "clang/test/Index/crash-recovery-modules.m" when
building with the MSVC STL & _ITERATOR_DEBUG_LEVEL == 2 (meaning a DEBUG
build)
Differential Revision: https://reviews.llvm.org/D69959
The file was modifiedclang/include/clang/Frontend/FrontendOptions.h
Commit b91f798fde42668a3a7b361c015deb787a46720d by diggerlin
implement printing out raw section data of xcoff objectfile for
llvm-objdump
SUMMARY: implement printing out raw section data of xcoff objectfile for
llvm-objdump and option -D --disassemble-all option for llvm-objdump
Reviewers: Sean Fertile Subscribers: rupprecht, seiyai,hiraditya
Differential Revision: https://reviews.llvm.org/D70255
The file was addedllvm/test/tools/llvm-objdump/xcoff-raw-section-data.test
The file was addedllvm/test/tools/llvm-objdump/xcoff-disassemble-all.test
The file was modifiedllvm/lib/Object/XCOFFObjectFile.cpp
Commit 411bfe476b758c09a0c9d4b3176e46f0a70de3bb by david.green
[ARM] Add and update a lot of VLDn tests. NFC
The file was modifiedllvm/test/Transforms/LoopVectorize/ARM/mve-interleaved-cost.ll
The file was addedllvm/test/CodeGen/Thumb2/mve-vst3.ll
The file was addedllvm/test/CodeGen/Thumb2/mve-vld2.ll
The file was addedllvm/test/CodeGen/Thumb2/mve-vld3.ll
The file was addedllvm/test/CodeGen/Thumb2/mve-vld4.ll
The file was addedllvm/test/CodeGen/Thumb2/mve-vst4.ll
The file was addedllvm/test/CodeGen/Thumb2/mve-vst2.ll
The file was modifiedllvm/test/Transforms/InterleavedAccess/ARM/interleaved-accesses.ll
Commit 882f23caeae5ad3ec1806eb6ec387e3611649d54 by david.green
[ARM] MVE interleaving load and stores.
Now that we have the intrinsics, we can add VLD2/4 and VST2/4 lowering
for MVE. This works the same way as Neon, recognising the load/shuffles
combination and converting them into intrinsics in a pre-isel pass,
which just calls getMaxSupportedInterleaveFactor, lowerInterleavedLoad
and lowerInterleavedStore.
The main difference to Neon is that we do not have a VLD3 instruction.
Otherwise most of the code works very similarly, with just some minor
differences in the form of the intrinsics to work around. VLD3 is
disabled by making isLegalInterleavedAccessType return false for those
cases.
We may need some other future adjustments, such as VLD4 take up half the
available registers so should maybe cost more. This patch should get the
basics in though.
Differential Revision: https://reviews.llvm.org/D69392
The file was modifiedllvm/test/CodeGen/Thumb2/mve-vld2.ll
The file was modifiedllvm/lib/Target/ARM/ARMTargetTransformInfo.cpp
The file was modifiedllvm/test/CodeGen/Thumb2/mve-vst4.ll
The file was modifiedllvm/test/CodeGen/Thumb2/mve-vst2.ll
The file was modifiedllvm/lib/Target/ARM/ARMISelLowering.cpp
The file was modifiedllvm/test/CodeGen/Thumb2/mve-vld4.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/ARM/mve-interleaved-cost.ll
The file was modifiedllvm/lib/Target/ARM/ARMISelLowering.h
The file was modifiedllvm/test/Transforms/InterleavedAccess/ARM/interleaved-accesses.ll
Commit 77f8a3324b741bc78c93d1076a31b77f331a0bc5 by Adrian Prantl
Add a "Using LLDB" section to the welcome page of the website
This is an attempt to feature the user-facing resources more prominently
on the LLDB website by calling out the tutorial and the GDB command map
wight on the start page.
I also moved the "Why a new debugger" section to the "Goals" subpage.
Given that LLDB's first release is almost a decade in the past now, the
title is a bit of an anachronism.
Lastly, I moved the Architecture sub-page from "use" to "resources",
since end-users do not care about the source code layout.
Differential Revision: https://reviews.llvm.org/D70449
The file was modifiedlldb/docs/status/goals.rst
The file was addedlldb/docs/resources/architecture.rst
The file was modifiedlldb/docs/.htaccess
The file was removedlldb/docs/use/architecture.rst
The file was modifiedlldb/docs/index.rst
Commit bfebc63a3dbd9505792ee000dbfc60371f02267a by Alex Lorenz
[ADT][Expensive checks] Create a std::random_device seed only once when
shuffling before sorting
This speeds up the build of compiler-rt with an expensive checks enabled
clang by an order of 1 or 2 magnitudes on my machine. I was hoping this
would also fix the 'large.test' libFuzzer timeout on the expensive
checks bot on green dragon
http://lab.llvm.org:8080/green/job/clang-stage1-cmake-RA-expensive/, but
the fuzzer test still takes too long to compile because of other IR/MIR
verification inefficiencies.
Differential Revision: https://reviews.llvm.org/D70288
The file was modifiedllvm/include/llvm/ADT/STLExtras.h
Commit c97f303880c26007b4e74e3fd0bde5ed802a25f1 by tstellar
test-release.sh: Update to fetch source from GitHub
Summary: This also changes the test-release.sh script to build using the
monorepo layout instead of copying sub-projects into llvm/tools or
llvm/projects.
Reviewers: jdoerfert, hans
Reviewed By: hans
Subscribers: hans, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D70353
The file was modifiedllvm/utils/release/test-release.sh
Commit 2535fe5ad3327c8f77654a728986ca0afdf249f7 by eugenis
MTE: add more unchecked instructions.
Summary: In particular, 1- and 2-byte loads and stores ignore the
pointer tag when using SP as the base register.
Reviewers: pcc, ostannard
Subscribers: hiraditya, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D70341
The file was modifiedllvm/test/CodeGen/AArch64/stack-tagging-unchecked-ld-st.ll
The file was modifiedllvm/lib/Target/AArch64/AArch64StackTaggingPreRA.cpp
Commit a84b48d01e3e77b754a6d4d7326e4a0c4faa10ab by jonchesterfield
[nfc][libomptarget] Remove casts of string literals to char*
The file was modifiedopenmp/libomptarget/deviceRTLs/nvptx/src/parallel.cu
The file was modifiedopenmp/libomptarget/deviceRTLs/nvptx/src/omptarget-nvptx.h
Commit 0a8e7ca402eb3470eb5faf4982581771cb849130 by spatel
[SLP] fix miscompile on min/max reductions with extra uses (PR43948)
(2nd try)
The 1st attempt was reverted because it revealed an existing bug where
we could produce invalid IR (use of value before definition). That
should be fixed with: rG39de82ecc9c2
The bug manifests as replacing a reduction operand with an undef value.
The problem appears to be limited to cases where a min/max reduction has
extra uses of the compare operand to the select.
In the general case, we are tracking "ExternallyUsedValues" and an
"IgnoreList" of the reduction operations, but those may not apply to the
final compare+select in a min/max reduction.
For that, we use replaceAllUsesWith (RAUW) to ensure that the new
vectorized reduction values are transferred to all subsequent users.
Differential Revision: https://reviews.llvm.org/D70148
The file was modifiedllvm/test/Transforms/SLPVectorizer/X86/used-reduced-op.ll
The file was modifiedllvm/test/Transforms/SLPVectorizer/X86/reduction.ll
The file was modifiedllvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
Commit 3279724905c14a8db383ade53af40a0dd49504d8 by Duncan P. N. Exon Smith
llvm/ObjCARC: Eliminate inlined AutoreleaseRV calls
Pair up inlined AutoreleaseRV calls with their matching RetainRV or
ClaimRV.
- RetainRV cancels out AutoreleaseRV.  Delete both instructions.
- ClaimRV is a peephole for RetainRV+Release.  Delete AutoreleaseRV and
replace ClaimRV with Release.
This avoids problems where more aggressive inlining triggers memory
regressions.
This patch is happy to skip over non-callable instructions and non-ARC
intrinsics looking for the pair.  It is likely sound to also skip over
opaque function calls, but that's harder to reason about, and it's not
relevant to the goal here: if there's an opaque function call splitting
up a pair, it's very unlikely that a handshake would have happened
dynamically without inlining.
Note that this patch also subsumes the previous logic that looked
backwards from ReleaseRV.
https://reviews.llvm.org/D70370 rdar://problem/46509586
The file was addedllvm/test/Transforms/ObjCARC/inlined-autorelease-return-value.ll
The file was modifiedllvm/test/Transforms/ObjCARC/unsafe-claim-rv.ll
The file was modifiedllvm/lib/Transforms/ObjCARC/ObjCARCOpts.cpp
Commit ba71ca37208faf0916b4cae4298789796b791cfe by Vedant Kumar
[DebugInfo] Describe size of spilled values in call site params
A call site parameter description of a memory operand needs to
unambiguously convey the size of the operand to prevent incorrect entry
value evaluation.
Thanks for David Stenberg for pointing this issue out!
The file was modifiedllvm/lib/CodeGen/TargetInstrInfo.cpp
The file was modifiedllvm/test/DebugInfo/MIR/X86/dbg-call-site-spilled-arg.mir
Commit c444a01df3553d9405cbd4dac3c1074a71e6c2e1 by tyker
fixe leak found by asan build bot
The file was modifiedclang/lib/AST/DeclCXX.cpp
Commit ea13683f3d848df05d836f6d86dc40ba2113bb43 by diggerlin
The patch is the compiler error specific on the compile error on CMVC
SUMMARY:
CMVC has a compiler error on the const uint64_t OffsetToRaw = is64Bit()
                                  ?
toSection64(Sec)->FileOffsetToRawData
                                  :
toSection32(Sec)->FileOffsetToRawData;
while  gcc  compiler do not have the problem. I have to change the code
to
  uint64_t OffsetToRaw;
if (is64Bit())
   OffsetToRaw = toSection64(Sec)->FileOffsetToRawData;
else
   OffsetToRaw = toSection32(Sec)->FileOffsetToRawData;
Reviewers: Sean Fertile Subscribers: rupprecht, seiyai,hiraditya
Differential Revision: https://reviews.llvm.org/D70255
The file was modifiedllvm/lib/Object/XCOFFObjectFile.cpp
Commit 1aacf58819a27f428a46ce839a0ee797af03c1fd by Vedant Kumar
[profile] Unbreak Fuchsia/Windows after D68351
Continuous mode is not yet supported on Fuchsia/Windows, however an
error should not be reported unless the user attempted to actually
enable continuous mode.
The file was modifiedcompiler-rt/lib/profile/InstrProfilingFile.c
Commit 586f65d31f32ca6bc8cfdb8a4f61bee5057bf6c8 by rnk
Add a key method to Sema to optimize debug info size
It turns out that the debug info describing the Sema class is an
appreciable percentage of the total object file size of objects in Sema.
By adding a key function, clang is able to optimize the debug info size
by emitting a forward declaration in TUs that do not define the key
function.
On Windows, with clang-cl, these are the total sizes of object files in
Sema before and after this change, compiling with optimizations and
debug info:
before: 335,012 KB
after:  278,116 KB
delta:  -56,896 KB
percent: -17.0%
The effect on link time was negligible, despite having ~56MB less input.
On Linux, with clang, these are the same sizes using DWARF -g and
optimizations:
before: 603,756 KB
after:  515,340 KB
delta:  -88,416 KB
percent: -14.6%
I didn't use type units, DWARF-5, fission, or any other special flags.
Reviewed By: thakis
Differential Revision: https://reviews.llvm.org/D70340
The file was modifiedclang/lib/Sema/Sema.cpp
The file was modifiedclang/include/clang/Sema/Sema.h
Commit 75b5db3094399302a1f60f5e09cf3d6ed8d161fb by Tim Northover
[docs] Remove dangling parenthesis from documentation
Patch by leiteg.
The file was modifiedllvm/docs/CommandLine.rst
Commit 568db780bb7267651a902da8e85bc59fc89aea70 by Vedant Kumar
[CGDebugInfo] Emit subprograms for decls when AT_tail_call is understood
(reland with fixes)
Currently, clang emits subprograms for declared functions when the
target debugger or DWARF standard is known to support entry values
(DW_OP_entry_value & the GNU equivalent).
Treat DW_AT_tail_call the same way to allow debuggers to follow cross-TU
tail calls.
Pre-patch debug session with a cross-TU tail call:
```
* frame #0: 0x0000000100000fa4 main`target at b.c:4:3 [opt]
   frame #1: 0x0000000100000f99 main`main at a.c:8:10 [opt]
```
Post-patch (note that the tail-calling frame, "helper", is visible):
```
* frame #0: 0x0000000100000fa4 main`target at b.c:4:3 [opt]
   frame #1: 0x0000000100000f80 main`helper [opt] [artificial]
   frame #2: 0x0000000100000f99 main`main at a.c:8:10 [opt]
```
This was reverted in 5b9a072c because it attached declaration
subprograms to inlinable builtin calls, which interacted badly with the
MergeICmps pass. The fix is to not attach declarations to builtins.
rdar://46577651
Differential Revision: https://reviews.llvm.org/D69743
The file was modifiedclang/test/CodeGenCXX/dbg-info-all-calls-described.cpp
The file was modifiedclang/test/CodeGen/debug-info-extern-call.c
The file was modifiedllvm/test/DebugInfo/X86/dwarf-callsite-related-attrs.ll
The file was modifiedclang/lib/Sema/SemaCodeComplete.cpp
The file was modifiedclang/include/clang/Basic/IdentifierTable.h
The file was modifiedclang/lib/CodeGen/CGDebugInfo.cpp
Commit 0d4211f4e753057feec32938e596d037d4f5a6aa by Vedant Kumar
[profile] Address unused function warnings on Windows after D69586
This '#ifdef's out two functions which are unused on Windows, to prevent
-Wunused-function warnings.
The file was modifiedcompiler-rt/lib/profile/InstrProfilingFile.c
Commit d08c056695a59fb1cfc7ccc9a2784bb9a6514551 by a.bataev
[OPENMP50]Add if clause in simd directive.
According to OpenMP 5.0, if clause can be used in simd directive. If
condition in the if clause if false, the non-vectorized version of the
loop must be executed.
The file was addedclang/test/OpenMP/simd_if_messages.cpp
The file was modifiedclang/lib/CodeGen/CGStmtOpenMP.cpp
The file was modifiedclang/lib/Sema/SemaOpenMP.cpp
The file was modifiedclang/test/OpenMP/simd_ast_print.cpp
The file was modifiedclang/test/OpenMP/simd_codegen.cpp
The file was modifiedclang/lib/CodeGen/CodeGenFunction.h
The file was modifiedclang/include/clang/ASTMatchers/ASTMatchers.h
The file was modifiedclang/lib/CodeGen/CGOpenMPRuntime.h
The file was modifiedclang/lib/Parse/ParseOpenMP.cpp
The file was modifiedclang/include/clang/Basic/OpenMPKinds.def
The file was modifiedclang/lib/Basic/OpenMPKinds.cpp
The file was modifiedclang/include/clang/Basic/OpenMPKinds.h
Commit 3a8104a9ea3d88fb4d0ef17185e420c814757bfd by listmail
Precommit test showing oppurtunity when computing exit tests of
unsimplified IR
If we partially unswitch a loop, we leave around the (and i1 X, true) or
(or i1 X, false) forms.  At the moment, this inhibits SCEVs ability to
compute trip counts, patch forthcoming.
The file was addedllvm/test/Analysis/ScalarEvolution/trip-count-andor.ll
Commit 8c48405069085a2c8b6b80816eda99e5dad31fc1 by Duncan P. N. Exon Smith
Wrap C APIs with pragmas enforcing -Werror=strict-prototypes
Force `-Werror=strict-prototypes` so that C API tests fail to compile if
we add a non-prototype declaration.  This should help avoid regressions
like bddecba4b333f7772029b4937d2c34f9f2fda6ca was fixing.
https://reviews.llvm.org/D70285 rdar://problem/57203137
The file was modifiedllvm/include/llvm-c/Transforms/PassManagerBuilder.h
The file was modifiedllvm/include/llvm-c/Disassembler.h
The file was modifiedclang/include/clang-c/CXErrorCode.h
The file was addedllvm/include/llvm-c/ExternC.h
The file was modifiedllvm/include/llvm-c/lto.h
The file was modifiedllvm/include/llvm-c/Comdat.h
The file was modifiedllvm/include/llvm-c/LinkTimeOptimizer.h
The file was modifiedllvm/include/llvm-c/Remarks.h
The file was modifiedclang/include/clang-c/CXString.h
The file was modifiedllvm/include/llvm-c/IRReader.h
The file was modifiedllvm/include/llvm-c/Transforms/Vectorize.h
The file was modifiedclang/include/clang-c/FatalErrorHandler.h
The file was modifiedllvm/include/llvm-c/Transforms/Utils.h
The file was modifiedclang/include/clang-c/CXCompilationDatabase.h
The file was modifiedllvm/include/llvm-c/Transforms/Coroutines.h
The file was modifiedllvm/include/llvm-c/Core.h
The file was modifiedllvm/include/llvm-c/Initialization.h
The file was modifiedclang/include/clang-c/BuildSystem.h
The file was modifiedllvm/include/llvm-c/Target.h
The file was modifiedllvm/include/llvm-c/Transforms/AggressiveInstCombine.h
The file was modifiedllvm/include/llvm-c/Transforms/IPO.h
The file was modifiedllvm/include/llvm-c/BitReader.h
The file was modifiedllvm/include/llvm-c/OrcBindings.h
The file was modifiedclang/include/clang-c/Documentation.h
The file was modifiedllvm/include/llvm-c/Error.h
The file was addedclang/include/clang-c/ExternC.h
The file was modifiedllvm/include/llvm-c/Analysis.h
The file was modifiedllvm/include/llvm-c/TargetMachine.h
The file was modifiedllvm/include/llvm-c/Object.h
The file was modifiedllvm/include/llvm-c/Transforms/InstCombine.h
The file was modifiedllvm/include/llvm-c/BitWriter.h
The file was modifiedllvm/include/llvm-c/DebugInfo.h
The file was modifiedclang/include/clang-c/Index.h
The file was modifiedllvm/include/llvm-c/ErrorHandling.h
The file was modifiedllvm/include/llvm-c/Support.h
The file was modifiedclang/include/clang-c/Platform.h
The file was modifiedllvm/include/llvm-c/Transforms/Scalar.h
The file was modifiedllvm/include/llvm-c/Types.h
The file was modifiedllvm/include/llvm-c/ExecutionEngine.h
The file was modifiedllvm/include/llvm-c/Linker.h
Commit cd4811360e2a1d23578073c6c99b2ef8ba276289 by benny.kra
[ValueTracking] Add a basic version of isKnownNonInfinity and use it to
detect more NoNaNs
The file was modifiedllvm/include/llvm/Analysis/ValueTracking.h
The file was modifiedllvm/test/Transforms/InstSimplify/known-never-nan.ll
The file was modifiedllvm/lib/Analysis/ValueTracking.cpp
Commit cf823ce4ad9d04c69b7c29d236f7b14c875111c2 by Amara Emerson
[AArch64] Fix MIR test instruction to not have invalid operand.
In anticipation of an improved verifier in D63973.
The file was modifiedllvm/test/CodeGen/AArch64/GlobalISel/legalize-phi-insertpt-decrement.mir
Commit f3eb5dee5756876be0524c59c21478659eba8c4d by listmail
[LoopPred] Generalize profitability check to handle unswitch output
Unswitch (and other loop transforms) like to generate loop exit blocks
with unconditional successors, and phi nodes (LCSSA, or simple multiple
exiting blocks sharing an exit).  Generalize the "likely very rare exit"
check slightly to handle this form.
The file was modifiedllvm/lib/Transforms/Scalar/LoopPredication.cpp
The file was modifiedllvm/test/Transforms/LoopPredication/predicate-exits.ll
Commit 70c68a6b0e515967dba5b30f6a60e220a8cd8d2c by listmail
[NFC] Factor out utilities for manipulating widenable branches
With the widenable condition construct, we have the ability to reason
about branches which can be 'widened' (i.e. made to fail more often).
We've got a couple o transforms which leverage this.  This patch just
cleans up the API a bit.
This is prep work for generalizing our definition of a widenable branch
slightly.  At the moment "br i1 (and A, wc()), ..." is considered
widenable, but oddly, neither "br i1 (and wc(), B), ..." or "br i1 wc(),
..." is.  That clearly needs addressed, so first, let's centralize the
code in one place.
The file was modifiedllvm/lib/Transforms/Scalar/LoopPredication.cpp
The file was modifiedllvm/lib/Transforms/Utils/GuardUtils.cpp
The file was modifiedllvm/include/llvm/Transforms/Utils/GuardUtils.h
The file was modifiedllvm/lib/Analysis/GuardUtils.cpp
The file was modifiedllvm/lib/Transforms/Scalar/GuardWidening.cpp
The file was modifiedllvm/include/llvm/Analysis/GuardUtils.h
Commit ea8e02822341e2421b94167d828d3f224e767424 by puyan
[clang][IFS] Driver Pipeline: generate stubs after standard pipeline (2)
Second Landing Attempt:
Up until now, clang interface stubs has replaced the standard PP -> C ->
BE -> ASM -> LNK pipeline. With this change, it will happen in
conjunction with it. So what when you build your code you will get an
a.out or lib.so as well as an interface stub file.
Example:
clang -shared -o libfoo.so -emit-interface-stubs ...
will generate both a libfoo.so and a libfoo.ifso. The .so file will
contain the code from the standard compilation pipeline and the .ifso
file will contain the ELF stub library.
Differential Revision: https://reviews.llvm.org/D70274
The file was addedclang/test/InterfaceStubs/driver-test2.c
The file was modifiedclang/test/InterfaceStubs/windows.cpp
The file was modifiedclang/lib/Driver/ToolChains/InterfaceStubs.cpp
The file was modifiedclang/test/InterfaceStubs/driver-test.c
The file was modifiedclang/lib/Driver/Types.cpp
The file was modifiedclang/lib/Driver/Driver.cpp
The file was addedclang/test/InterfaceStubs/ppc.cpp
Commit 377d70cdea733e36107e99d9148864d24797d51c by puyan
[clang][IFS] Fixing failing bots that do not have PPC target or
"orbis-ld"
The file was modifiedclang/test/InterfaceStubs/driver-test.c
The file was modifiedclang/test/InterfaceStubs/ppc.cpp
Commit 28a91473e33eb3585a87514e4cf2523a9a587d82 by listmail
[GuardWidening] Remove WidenFrequentBranches transform
This code has never been enabled.  While it is tested, it's complicating
some refactoring.  If we decide to re-implement this, doing it in
SimplifyCFG would probably make more sense anyways.
The file was modifiedllvm/lib/Transforms/Scalar/GuardWidening.cpp
The file was removedllvm/test/Transforms/GuardWidening/widen-frequent-branches.ll
Commit 88f00aef684ff84a6494e1f17d5466c5678f703d by alexshap
Introduce llvm-install-name-tool
This diff adds a new "driver" for llvm-objcopy which is supposed to
emulate the behavior of install-name-tool. This is a recommit of
b5913e6d2 with ubsan issues fixed.
Differential revision: https://reviews.llvm.org/D69146
Test plan: make check-all
The file was addedllvm/test/tools/llvm-objcopy/MachO/Inputs/x86_64.yaml
The file was modifiedllvm/tools/llvm-objcopy/MachO/MachOWriter.cpp
The file was modifiedllvm/tools/llvm-objcopy/CMakeLists.txt
The file was addedllvm/test/tools/llvm-objcopy/MachO/install-name-tool-help-message.test
The file was addedllvm/test/tools/llvm-objcopy/MachO/Inputs/i386.yaml
The file was modifiedllvm/tools/llvm-objcopy/CopyConfig.h
The file was addedllvm/test/tools/llvm-objcopy/MachO/install-name-tool-add-rpath.test
The file was addedllvm/test/tools/llvm-objcopy/MachO/install-name-tool-version.test
The file was modifiedllvm/tools/llvm-objcopy/CopyConfig.cpp
The file was addedllvm/tools/llvm-objcopy/InstallNameToolOpts.td
The file was modifiedllvm/tools/llvm-objcopy/MachO/Object.cpp
The file was modifiedllvm/tools/llvm-objcopy/MachO/MachOReader.cpp
The file was modifiedllvm/tools/llvm-objcopy/llvm-objcopy.cpp
The file was modifiedllvm/tools/llvm-objcopy/MachO/Object.h
The file was modifiedllvm/tools/llvm-objcopy/MachO/MachOObjcopy.cpp
Commit 327a18ca0a000e4f99d02d0042ca2106db635a68 by rupprecht
[lldb][test] Prevent \n in calls to lldb's expect() test helper.
Summary: expect() forwards its command to sendline(). This can be
problematic if the command already contains a newline: sendline()
unconditionally adds a newline to the command, which causes the command
to run twice (hitting enter in lldb runs the previous command). The
expect() helper looks for the prompt and finds the first one, but
because the command has run a second time, the buffer will contain the
contents of the second time the command ran, causing potential erroneous
matching.
Simplify the editline test, which was using different commands to
workaround this misunderstanding.
Reviewers: labath
Reviewed By: labath
Subscribers: merge_guards_bot, lldb-commits
Tags: #lldb
Differential Revision: https://reviews.llvm.org/D70324
The file was modifiedlldb/packages/Python/lldbsuite/test/terminal/TestEditline.py
The file was modifiedlldb/packages/Python/lldbsuite/test/lldbpexpect.py
Commit 29fd1e1f4a372f3870e054da24b57a4f45861808 by puyan
[clang][IFS] Attempting to fix missing 'orbis-ld' on scei-ps4-ubuntu
bot.
I want this test to run end to end, but I am still having trouble with
missing linkers on the scei-ps4 bot. Will remove this test if it
continues to be a source of brittle failures. Sorry for the noise.
The file was modifiedclang/test/InterfaceStubs/driver-test.c
Commit 85435bdde00241057989a2f579ea6c9c64ef1606 by petecoup
[ARC] Add InitializePasses header to fix ARC build.
The file was modifiedllvm/lib/Target/ARC/ARCOptAddrMode.cpp
The file was modifiedllvm/lib/Target/ARC/ARCBranchFinalize.cpp
Commit 72fac0663a3305e66be4c63d1089ea8a85270c9b by listmail
[tests] Autogen a test to eliminate spurious diff from following patch
The file was modifiedllvm/test/Transforms/GuardWidening/basic_widenable_condition_guards.ll
Commit 85589f8077a229a6fbc7c245ae28bec06b88c5fb by craig.topper
[X86] Add custom type legalization and lowering for scalar
STRICT_FP_TO_SINT/UINT
This is a first pass at Custom lowering for these operations. I also
updated some of the vector code where it was obviously easy and
straightforward. More work needed in follow up.
This enables these operations to be handled with X87 where special
rounding control adjustments are needed to perform a truncate.
Still need to fix Promotion in the target independent code in
LegalizeDAG. llrint/llround split into separate test file because we
can't make a strict libcall properly yet either and we need to do that
when i64 isn't a legal type.
This does not include any isel support. So we still rely on the mutation
in SelectionDAGIsel to remove the strict from this stuff later. Except
for the X87 stuff which goes through custom nodes that already had
chains.
Differential Revision: https://reviews.llvm.org/D70214
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.h
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.cpp
The file was modifiedllvm/test/CodeGen/X86/fp-intrinsics.ll
The file was modifiedllvm/test/CodeGen/X86/vector-constrained-fp-intrinsics.ll
Commit 69242e986823e3fdd11a8e51f47f36bec714363c by Duncan P. N. Exon Smith
clang/Modules: Sink ASTReadResult in ReadControlBlock, NFC
Simplify the code by avoiding some state that wasn't being used.  The
function-level `Result` was only assigned a value other than `Success`
in the handler for `OPTIONS_BLOCK_ID`, but in that case it also hits an
early return.  Remove it at the function-level to make it obvious that
the normal case always returns `Success`.
The file was modifiedclang/lib/Serialization/ASTReader.cpp
Commit 10089ce2027ac15fc04427189b3b22ccec4d8535 by peter
scudo: Switch from std::random_shuffle to std::shuffle in a test.
This lets the test build with C++17.
Differential Revision: https://reviews.llvm.org/D70471
The file was modifiedcompiler-rt/lib/scudo/standalone/tests/secondary_test.cpp
Commit c4b41e8d1d860e2439c7c0e16bd1d1af3fe2d023 by craig.topper
[LegalizeDAG][X86] Enable STRICT_FP_TO_SINT/UINT to be promoted
Differential Revision: https://reviews.llvm.org/D70220
The file was modifiedllvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.cpp
The file was modifiedllvm/test/CodeGen/X86/fp-intrinsics.ll
Commit 36eea5c31f13c086c951239ff876564c90546efa by Jonas Devlieghere
[Reproducer] Namespace the reproducer dump options.
Make it clear that the current reproducer options are for dumping.
The file was modifiedlldb/source/Commands/Options.td
The file was modifiedlldb/source/Commands/CommandObjectReproducer.cpp
Commit 2cea161b80abf6ba442129d83bd0d4a97b751866 by alexshap
Revert "Introduce llvm-install-name-tool"
This temporarily reverts the commit
88f00aef684ff84a6494e1f17d5466c5678f703d. The change broke the buildbot
http://lab.llvm.org:8011/builders/sanitizer-x86_64-linux-fast/builds/36836
The file was modifiedllvm/tools/llvm-objcopy/MachO/Object.cpp
The file was modifiedllvm/tools/llvm-objcopy/CopyConfig.cpp
The file was modifiedllvm/tools/llvm-objcopy/CopyConfig.h
The file was modifiedllvm/tools/llvm-objcopy/MachO/MachOWriter.cpp
The file was removedllvm/test/tools/llvm-objcopy/MachO/install-name-tool-version.test
The file was removedllvm/test/tools/llvm-objcopy/MachO/install-name-tool-add-rpath.test
The file was modifiedllvm/tools/llvm-objcopy/MachO/Object.h
The file was modifiedllvm/tools/llvm-objcopy/CMakeLists.txt
The file was removedllvm/tools/llvm-objcopy/InstallNameToolOpts.td
The file was modifiedllvm/tools/llvm-objcopy/MachO/MachOReader.cpp
The file was modifiedllvm/tools/llvm-objcopy/MachO/MachOObjcopy.cpp
The file was modifiedllvm/tools/llvm-objcopy/llvm-objcopy.cpp
The file was removedllvm/test/tools/llvm-objcopy/MachO/Inputs/i386.yaml
The file was removedllvm/test/tools/llvm-objcopy/MachO/Inputs/x86_64.yaml
The file was removedllvm/test/tools/llvm-objcopy/MachO/install-name-tool-help-message.test
Commit 1b387484b9b38a4a1e98a9d22a9a26065b0d184e by puyan
[clang][IFS] Fixing unsupported emulation mode on clang-ppc64be-linux
bot.
I am in another pickle here where if I specify a triple, I get the wrong
elf target arch on the PPC bot (error from the PPC elf Linker). To avoid
this I am going to turn this test off on the PPC bots for now.
The file was modifiedclang/test/InterfaceStubs/driver-test.c
Commit bffdee8ef379126de3f2581214d89c1b29f440b7 by francisvm
[LTO][Legacy] Add API for passing LLVM options separately
In order to correctly pass options to LLVM, including options containing
spaces which are used as delimiters for multiple options in
lto_codegen_debug_options, add a new API:
lto_codegen_debug_options_array.
Unfortunately, tools/lto has no testing infrastructure yet, so there are
no tests associated with this patch.
Differential Revision: https://reviews.llvm.org/D70463
The file was modifiedllvm/include/llvm/LTO/legacy/LTOCodeGenerator.h
The file was modifiedllvm/tools/lto/lto.exports
The file was modifiedllvm/include/llvm-c/lto.h
The file was modifiedllvm/lib/LTO/LTOCodeGenerator.cpp
The file was modifiedllvm/tools/lto/lto.cpp
Commit 606a2bd6218e8378728b6c1e021e64bb57084a97 by rnk
[musttail] Don't forward AL on Win64
AL is only used for varargs on SysV platforms. Don't forward it on
Windows. This allows control flow guard to set up an extra hidden
parameter in RAX, as described in PR44049.
This also has the effect of freeing up RAX for use in virtual member
pointer thunks, which may also be a nice little code size improvement on
Win64.
Fixes PR44049
Reviewers: ajpaverd, efriedma, hans
Differential Revision: https://reviews.llvm.org/D70413
The file was modifiedllvm/test/CodeGen/X86/musttail-varargs.ll
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.cpp
The file was modifiedllvm/test/CodeGen/X86/cfguard-checks.ll
Commit 8700831734811cb89eafb72b75206f21e9f047e9 by Duncan P. N. Exon Smith
clang/Modules: Early return in CompilerInstance::createModuleManager,
NFC
Reduce nesting with an early `return`.
The file was modifiedclang/lib/Frontend/CompilerInstance.cpp
Commit f37356d6f60ae5db978611621d3a375ed87ec0f0 by puyan
[clang][IFS][test] Removing driver-test.c. Test is still too brittle.
Removing this test because if I add a triple then there are link falures
on targets like ppc and s390x. If I don't add a triple then on PS4
targets the clang driver tries to invoke orbis-ld which ends up being
not found.
The file was removedclang/test/InterfaceStubs/driver-test.c
Commit 27b229dc17b2ea1d06fe566df8631bb2fff7b1c8 by puyan
Revert "[clang][IFS][test] Removing driver-test.c. Test is still too
brittle."
This reverts commit f37356d6f60ae5db978611621d3a375ed87ec0f0.
The file was addedclang/test/InterfaceStubs/driver-test.c
Commit 6c6d34883a3003693cbf0ab3edf19eb999c1a62d by puyan
Revert "[clang][IFS] Fixing unsupported emulation mode on
clang-ppc64be-linux bot."
This reverts commit 1b387484b9b38a4a1e98a9d22a9a26065b0d184e.
The file was modifiedclang/test/InterfaceStubs/driver-test.c
Commit 0ce89e2a0d857fa89dc671746697c44c6ef0fad8 by puyan
Revert "[clang][IFS] Attempting to fix missing 'orbis-ld' on
scei-ps4-ubuntu bot."
This reverts commit 29fd1e1f4a372f3870e054da24b57a4f45861808.
The file was modifiedclang/test/InterfaceStubs/driver-test.c
Commit 85a1662035f6445ce95f190a2fef31ed33edb175 by puyan
Revert "[clang][IFS] Fixing failing bots that do not have PPC target or
"orbis-ld""
This reverts commit 377d70cdea733e36107e99d9148864d24797d51c.
The file was modifiedclang/test/InterfaceStubs/driver-test.c
The file was modifiedclang/test/InterfaceStubs/ppc.cpp
Commit 905985435500da01266329701c4a22f353fb7959 by puyan
Revert "[clang][IFS] Driver Pipeline: generate stubs after standard
pipeline (2)"
This reverts commit ea8e02822341e2421b94167d828d3f224e767424.
The file was modifiedclang/test/InterfaceStubs/windows.cpp
The file was modifiedclang/lib/Driver/Types.cpp
The file was modifiedclang/test/InterfaceStubs/driver-test.c
The file was removedclang/test/InterfaceStubs/ppc.cpp
The file was modifiedclang/lib/Driver/ToolChains/InterfaceStubs.cpp
The file was removedclang/test/InterfaceStubs/driver-test2.c
The file was modifiedclang/lib/Driver/Driver.cpp
Commit 86c66cea21f065a1f757cb072c544f89ce227284 by aminim
Extends the tblgen macro to allow mlir-tblgen to be installed
The mlir-tblgen tool was not getting installed.  This change allows the
MLIR project to be installed along with llvm-tblgen.
Differential Revision: https://reviews.llvm.org/D69824
The file was modifiedllvm/cmake/modules/TableGen.cmake
Commit 47feae5dd61d891d4c1382b9784738111b4f9396 by ruiu
Use lld::make<T> to make TpiSource objects
In lld we rarely use std::unique_ptr but instead allocate new instances
using lld::make<T>() so that they are deallocated at the end of linking.
This patch changes existing code so that that follows the convention.
Differential Revision: https://reviews.llvm.org/D70420
The file was modifiedlld/COFF/DebugTypes.cpp
Commit f3225f2abe78d8a25ee5deea4265b447e7b7d5ee by Austin.Kerbow
AMDGPU/GlobalISel: Legalize FDIV64
Reviewers: arsenm
Reviewed By: arsenm
Subscribers: kzhuravl, jvesely, wdng, nhaehnle, yaxunl, rovka,
dstuttard, tpr, t-tye, hiraditya, Petar.Avramovic, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D70403
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.h
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-fdiv.mir
Commit 0c50c0b0552edf9f375a32eea5e4d254dc4c7e5c by sepavloff
[FEnv] File with properties of constrained intrinsics
Summary In several places we need to enumerate all constrained
intrinsics or IR nodes that should be represented by them. It is easy to
miss some of the cases. To make working with these intrinsics more
convenient and robust, this change introduces file containing
definitions of all constrained intrinsics and some of their properties.
This file can be included to generate constrained intrinsics processing
code.
Reviewers: kpn, andrew.w.kaylor, cameron.mcinally, uweigand
Subscribers: hiraditya, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D69887
The file was modifiedllvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
The file was modifiedllvm/lib/CodeGen/TargetLoweringBase.cpp
The file was addedllvm/include/llvm/IR/ConstrainedOps.def
The file was modifiedllvm/include/llvm/CodeGen/SelectionDAGNodes.h
The file was modifiedllvm/include/llvm/CodeGen/TargetLowering.h
The file was modifiedllvm/include/llvm/IR/IntrinsicInst.h
The file was modifiedllvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
The file was modifiedllvm/lib/CodeGen/SelectionDAG/LegalizeVectorOps.cpp
The file was modifiedllvm/lib/CodeGen/SelectionDAG/LegalizeVectorTypes.cpp
The file was modifiedllvm/lib/IR/Verifier.cpp
The file was modifiedllvm/docs/AddingConstrainedIntrinsics.rst
The file was modifiedllvm/lib/IR/IntrinsicInst.cpp
Commit 7d980319ab241c68bf856c4ac0f3702f50c6c595 by i
[FEnv] Fix AddingConstrainedIntrinsics.rst after
llvmorg-10-init-10282-g0c50c0b0552
The file was modifiedllvm/docs/AddingConstrainedIntrinsics.rst
Commit c54959c00d0b39f357d48c3b4f955d72de4c9fc1 by alexshap
Introduce llvm-install-name-tool
This diff adds a new "driver" for llvm-objcopy which is supposed to
emulate the behavior of install-name-tool. This is a recommit of b5913e6
with ubsan, test dependencies issues fixed.
Differential revision: https://reviews.llvm.org/D69146
Test plan: make check-all
The file was modifiedllvm/tools/llvm-objcopy/MachO/Object.cpp
The file was modifiedllvm/tools/llvm-objcopy/MachO/Object.h
The file was modifiedllvm/test/CMakeLists.txt
The file was modifiedllvm/test/lit.cfg.py
The file was addedllvm/tools/llvm-objcopy/InstallNameToolOpts.td
The file was addedllvm/test/tools/llvm-objcopy/MachO/Inputs/i386.yaml
The file was modifiedllvm/tools/llvm-objcopy/CMakeLists.txt
The file was addedllvm/test/tools/llvm-objcopy/MachO/install-name-tool-add-rpath.test
The file was addedllvm/test/tools/llvm-objcopy/MachO/install-name-tool-help-message.test
The file was modifiedllvm/tools/llvm-objcopy/MachO/MachOWriter.cpp
The file was modifiedllvm/tools/llvm-objcopy/llvm-objcopy.cpp
The file was modifiedllvm/tools/llvm-objcopy/CopyConfig.cpp
The file was addedllvm/test/tools/llvm-objcopy/MachO/Inputs/x86_64.yaml
The file was modifiedllvm/tools/llvm-objcopy/CopyConfig.h
The file was modifiedllvm/tools/llvm-objcopy/MachO/MachOReader.cpp
The file was addedllvm/test/tools/llvm-objcopy/MachO/install-name-tool-version.test
The file was modifiedllvm/tools/llvm-objcopy/MachO/MachOObjcopy.cpp
Commit 1cc78fdb6f7d81d58cdafa44b0966708dc8575bf by grimar
[llvm-readobj/llvm-readelf] - Improve dumping of versioning sections.
Our elf-versioninfo.test is not perfect. It does not properly test how
flags are dumped and also we have a bug: they are dumped as enums in
LLVM style now, i.e not dumped properly.
GNU style uses a `versionFlagToString` method to build a string from
flags which seems is consistent with GNU readelf.
In this patch I fixed the issues mentioned.
Differential revision: https://reviews.llvm.org/D70399
The file was modifiedllvm/test/tools/llvm-readobj/elf-versioninfo.test
The file was modifiedllvm/tools/llvm-readobj/ELFDumper.cpp
The file was modifiedllvm/test/tools/yaml2obj/ELF/versym-section.yaml
The file was modifiedllvm/test/tools/llvm-readobj/elf-invalid-versioning.test
The file was modifiedllvm/test/tools/yaml2obj/ELF/verneed-section.yaml
The file was modifiedlld/test/ELF/verneed.s
The file was modifiedlld/test/ELF/verdef-dependency.s
The file was modifiedlld/test/ELF/verdef-defaultver.s
The file was modifiedllvm/test/tools/yaml2obj/ELF/verdef-section.yaml
The file was modifiedlld/test/ELF/verdef.s
Commit dc3ee330891c230f85242b442de9afe7fdb96da2 by martin
ExecutionEngine: add preliminary support for COFF ARM64
Differential Revision: https://reviews.llvm.org/D69434
The file was modifiedllvm/lib/Target/AArch64/AArch64TargetMachine.cpp
The file was modifiedllvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldCOFF.cpp
The file was addedllvm/test/ExecutionEngine/RuntimeDyld/AArch64/COFF_AArch64.s
The file was addedllvm/lib/ExecutionEngine/RuntimeDyld/Targets/RuntimeDyldCOFFAArch64.h
Commit ce1f95a6e077693f93d8869245f911aff3eb7e4c by djordje.todorovic
Reland "[clang] Remove the DIFlagArgumentNotModified debug info flag"
It turns out that the ExprMutationAnalyzer can be very slow when AST
gets huge in some cases. The idea is to move this analysis to the LLVM
back-end level (more precisely, in the LiveDebugValues pass). The new
approach will remove the performance regression, simplify the
implementation and give us front-end independent implementation.
Differential Revision: https://reviews.llvm.org/D68206
The file was modifiedclang/lib/CodeGen/CGDebugInfo.cpp
The file was modifiedlldb/packages/Python/lldbsuite/test/functionalities/param_entry_vals/basic_entry_values_x86_64/TestBasicEntryValuesX86_64.py
The file was modifiedclang/lib/CodeGen/CGDebugInfo.h
The file was removedclang/test/CodeGen/debug-info-param-modification.c
Commit 19ddba95513af4e673ce6724e3a87077c278354c by grimar
[llvm-readobj] - Improve dumping of the SHT_LLVM_LINKER_OPTIONS
sections.
I've added a few tests that shows how the current code could overrun the
section data buffer while dumping. I had to rewrite the code to fix
this.
Differential revision: https://reviews.llvm.org/D70112
The file was modifiedllvm/tools/llvm-readobj/ELFDumper.cpp
The file was modifiedllvm/test/tools/llvm-readobj/elf-linker-options.test
Commit f67534afd6f237d3ec00c207b26579968c3d60e5 by martin
[ExecutionEngine] Add a missing break to avoid warnings
This fixes buildbot errors since dc3ee330891c2.
The file was modifiedllvm/lib/ExecutionEngine/RuntimeDyld/Targets/RuntimeDyldCOFFAArch64.h
Commit 52c5014da099797e9f1f6c90acddf79a68aa85cb by sameer.sahasrabuddhe
[AMDGPU] add support for hostcall buffer pointer as hidden kernel
argument
Hostcall is a service that allows a kernel to submit requests to the
host using shared buffers, and block until a response is received. This
will eventually replace the shared buffer currently used for printf, and
repurposes the same hidden kernel argument. This change introduces a new
ValueKind in the HSA metadata to represent the hostcall buffer.
Differential Revision: https://reviews.llvm.org/D70038
The file was modifiedllvm/lib/BinaryFormat/AMDGPUMetadataVerifier.cpp
The file was modifiedllvm/test/CodeGen/AMDGPU/hsa-metadata-from-llvm-ir-full-v3.ll
The file was addedllvm/test/CodeGen/AMDGPU/hsa-metadata-hostcall-absent.ll
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPUHSAMetadataStreamer.cpp
The file was modifiedllvm/lib/Support/AMDGPUMetadata.cpp
The file was addedllvm/test/CodeGen/AMDGPU/opencl-printf-no-hostcall.ll
The file was addedllvm/test/CodeGen/AMDGPU/hsa-metadata-hostcall-absent-v3.ll
The file was addedllvm/test/CodeGen/AMDGPU/hsa-metadata-hostcall-present.ll
The file was modifiedllvm/include/llvm/Support/AMDGPUMetadata.h
The file was modifiedllvm/docs/AMDGPUUsage.rst
The file was modifiedllvm/test/CodeGen/AMDGPU/hsa-metadata-from-llvm-ir-full.ll
The file was addedllvm/test/CodeGen/AMDGPU/hsa-metadata-hostcall-present-v3.ll
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPUPrintfRuntimeBinding.cpp
Commit 6640f2e7d401359a112bbc84344e0137bdf8175f by Raphael Isemann
[lldb][NFC] Remove ClangASTContext::GetUniqueNamespaceDeclaration
overload
This overload is only used in one place and having static overloads for
all methods that only do an additional clang::ASTContext ->
ClangASTContext conversion is just not sustainable.
The file was modifiedlldb/include/lldb/Symbol/ClangASTContext.h
The file was modifiedlldb/source/Plugins/ExpressionParser/Clang/ClangExpressionDeclMap.cpp
The file was modifiedlldb/source/Symbol/ClangASTContext.cpp
Commit 02e9113665602ca3a4b987a78db7147a648766d1 by Raphael Isemann
[lldb][NFC] Remove ClangASTContext::FieldIsBitfield overload
The file was modifiedlldb/include/lldb/Symbol/ClangASTContext.h
The file was modifiedlldb/source/Symbol/ClangASTContext.cpp
Commit 82800df4de1bfc5fc332fc60f399d50c444050fe by Raphael Isemann
[lldb][NFC] Remove ClangASTContext::GetAsDeclContext
Everything we pass to this function is already a DeclContext.
The file was modifiedlldb/source/Symbol/ClangASTContext.cpp
The file was modifiedlldb/include/lldb/Symbol/ClangASTContext.h
The file was modifiedlldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserClang.cpp
Commit c502bae52410c83947e5ad7184dff810083afe75 by Raphael Isemann
[lldb][NFC] Simplify ClangASTContext::GetBasicTypes
static convenience methods that do the clang::ASTContext ->
ClangASTContext conversion and handle errors by simply ignoring them are
not a good idea.
The file was modifiedlldb/include/lldb/Symbol/ClangASTContext.h
The file was modifiedlldb/unittests/Symbol/TestClangASTContext.cpp
The file was modifiedlldb/source/Plugins/ExpressionParser/Clang/ClangExpressionDeclMap.cpp
The file was modifiedlldb/source/Symbol/ClangASTContext.cpp
Commit ea8678d1c78ecf6c719b4a9ff1aa8db0087401ca by sepavloff
Move floating point related entities to namespace level
This is recommit of commit e6584b2b7b2d, which was reverted in
30e7ee3c4bac together with af57dbf12e54. Original message is below.
Enumerations that describe rounding mode and exception behavior were
defined inside ConstrainedFPIntrinsic. It makes sense to use the same
definitions to represent the same properties in other cases, not only in
constrained intrinsics. It was however inconvenient as required to
include constrained intrinsics definitions even if they were not needed.
Also using long scope prefix reduced readability.
This change moves these definitioins to the namespace llvm::fp. No
functional changes.
Differential Revision: https://reviews.llvm.org/D69552
The file was addedllvm/lib/IR/FPEnv.cpp
The file was modifiedllvm/include/llvm/IR/IntrinsicInst.h
The file was modifiedllvm/lib/IR/CMakeLists.txt
The file was addedllvm/include/llvm/IR/FPEnv.h
The file was modifiedllvm/include/llvm/IR/IRBuilder.h
The file was modifiedllvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
The file was modifiedllvm/unittests/IR/IRBuilderTest.cpp
The file was modifiedllvm/lib/IR/IntrinsicInst.cpp
Commit e18ab2a0b801e75ee39bb8ba30584c69b4c6e577 by sam.mccall
[clangd] Treat UserDefinedLiteral as a leaf in SelectionTree,
sidestepping tokenization issues
Summary: Fixes https://github.com/clangd/clangd/issues/203
Reviewers: kadircet
Subscribers: ilya-biryukov, MaskRay, jkorous, arphaman, usaxena95,
cfe-commits
Tags: #clang
Differential Revision: https://reviews.llvm.org/D70446
The file was modifiedclang-tools-extra/clangd/unittests/SelectionTests.cpp
The file was modifiedclang-tools-extra/clangd/Selection.cpp
Commit 54b86b010bf52ae3f1c5499e38dc8ea52e17a9f2 by Raphael Isemann
[lldb][NFC] Remove unused ClangASTContext::GetUnknownAnyType
The file was modifiedlldb/include/lldb/Symbol/ClangASTContext.h
The file was modifiedlldb/source/Symbol/ClangASTContext.cpp
Commit 6a89ecb1ddd58575cd9a868bccaf64b2d1a9142a by llvmgnsyncbot
gn build: Merge ea8678d1c78
The file was modifiedllvm/utils/gn/secondary/llvm/lib/IR/BUILD.gn
Commit 979592a6f735a7111ba2c3a19e5ef3e8d336e01a by djordje.todorovic
[DebugInfo] Remove the DIFlagArgumentNotModified debug info flag
Due to changes in D68206, we remove the DIFlagArgumentNotModified and
its usage.
Differential Revision: https://reviews.llvm.org/D68207
The file was modifiedllvm/test/DebugInfo/MIR/X86/dbginfo-entryvals.mir
The file was modifiedllvm/include/llvm/IR/DebugInfoMetadata.h
The file was modifiedllvm/test/tools/llvm-dwarfdump/X86/locstats.ll
The file was modifiedllvm/test/tools/llvm-dwarfdump/X86/stats-dbg-callsite-info.ll
The file was modifiedllvm/test/DebugInfo/MIR/X86/debug-call-site-param.mir
The file was modifiedllvm/test/DebugInfo/Sparc/entry-value-complex-reg-expr.ll
The file was modifiedllvm/include/llvm/IR/DebugInfoFlags.def
The file was modifiedllvm/test/DebugInfo/MIR/ARM/dbgcall-site-propagated-value.mir
The file was modifiedllvm/test/DebugInfo/MIR/ARM/if-coverter-call-site-info.mir
The file was modifiedllvm/lib/CodeGen/LiveDebugValues.cpp
The file was modifiedllvm/bindings/go/llvm/dibuilder.go
The file was modifiedllvm/test/DebugInfo/MIR/Hexagon/live-debug-values-bundled-entry-values.mir
The file was modifiedllvm/test/DebugInfo/MIR/X86/avoid-single-entry-value-location.mir
The file was modifiedllvm/test/DebugInfo/MIR/X86/dbg-call-site-spilled-arg.mir
The file was modifiedllvm/test/DebugInfo/MIR/ARM/dbgcall-site-interpretation.mir
The file was modifiedllvm/test/DebugInfo/MIR/X86/dbgcall-site-interpretation.mir
The file was modifiedllvm/test/DebugInfo/MIR/X86/multiple-param-dbg-value-entry.mir
The file was modifiedllvm/docs/LangRef.rst
The file was modifiedllvm/test/DebugInfo/MIR/X86/DW_OP_entry_value.mir
The file was modifiedllvm/test/tools/llvm-dwarfdump/X86/valid-call-site-GNU-extensions.ll
The file was modifiedllvm/test/Assembler/debug-info.ll
The file was modifiedllvm/test/DebugInfo/ARM/entry-value-multi-byte-expr.ll
The file was modifiedllvm/test/DebugInfo/MIR/AArch64/dbgcall-site-interpretation.mir
Commit 089c0f581492cd6e2a3d2927be3fbf60ea2d7e62 by pavel
[DWARF] Add an api to get "interpreted" location lists
Summary: This patch adds DWARFDie::getLocations, which returns the
location expressions for a given attribute (typically DW_AT_location).
It handles both "inline" locations and references to the external
location list sections (currently only of the DW_FORM_sec_offset type).
It is implemented on top of DWARFUnit::findLoclistFromOffset, which is
also added in this patch. I tried to make their signatures similar to
the equivalent range list functionality.
The actual location list interpretation logic is in
DWARFLocationTable::visitAbsoluteLocationList. This part is not
equivalent to the range list code, but this deviation is motivated by a
desire to reuse the same location list parsing code within lldb.
The functionality is tested via a c++ unit test of the DWARFDie API.
Reviewers: dblaikie, JDevlieghere, SouraVX
Subscribers: mgorny, hiraditya, cmtice, probinson, llvm-commits, aprantl
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D70394
The file was modifiedllvm/include/llvm/DebugInfo/DWARF/DWARFDebugLoc.h
The file was modifiedllvm/lib/DebugInfo/DWARF/DWARFDie.cpp
The file was modifiedllvm/lib/DebugInfo/DWARF/DWARFDebugLoc.cpp
The file was modifiedllvm/lib/ObjectYAML/DWARFEmitter.cpp
The file was modifiedllvm/include/llvm/DebugInfo/DWARF/DWARFLocationExpression.h
The file was modifiedllvm/include/llvm/DebugInfo/DWARF/DWARFUnit.h
The file was modifiedllvm/include/llvm/DebugInfo/DWARF/DWARFDie.h
The file was modifiedllvm/lib/DebugInfo/DWARF/DWARFUnit.cpp
The file was addedllvm/unittests/DebugInfo/DWARF/DWARFDieTest.cpp
The file was modifiedllvm/unittests/DebugInfo/DWARF/CMakeLists.txt
Commit 23c76792081e3ae15b313b000a11bf456c16fdc8 by courbet
[CodeGen][NFC] Regenerate load-combine test with update_llc_test.
To prepare for D27861.
The file was modifiedllvm/test/CodeGen/AArch64/load-combine.ll
The file was modifiedllvm/test/CodeGen/ARM/load-combine-big-endian.ll
The file was modifiedllvm/test/CodeGen/ARM/load-combine.ll
The file was modifiedllvm/test/CodeGen/AArch64/load-combine-big-endian.ll
Commit 5e0b7df4db237b53d50799e8cbc5ce7d3872c9dd by llvmgnsyncbot
gn build: Merge 089c0f58149
The file was modifiedllvm/utils/gn/secondary/llvm/unittests/DebugInfo/DWARF/BUILD.gn
Commit 525f9c0be538ba93e01b3a783d62b9f562e5a6b4 by dmitry.preobrazhensky
[AMDGPU][DPP] Corrected DPP combiner
Added a check to make sure that the selected dpp opcode is supported by
target.
Reviewers: vpykhtin, arsenm, rampitec
Differential Revision: https://reviews.llvm.org/D70402
The file was modifiedllvm/lib/Target/AMDGPU/GCNDPPCombine.cpp
Commit 452d0b21e00d6f80e3b12f9ffc4fb5bc4986f081 by simon
[mips] Make MipsAsmParser::isEvaluated static function. NFC
The file was modifiedllvm/lib/Target/Mips/AsmParser/MipsAsmParser.cpp
Commit 8ac68f9dc58ab7420449fd49533f62788681e622 by simon
[mips] Put conditions when we need to expand memory operand into a
separate function. NFC
`expandMemInst` expects instruction with 3 or 4 operands and the last
operand requires expanding. It's redundant to scan all operands in a
loop. We can check the last operands.
The file was modifiedllvm/lib/Target/Mips/AsmParser/MipsAsmParser.cpp
Commit b80e483c4205d216f6648d7e217183694fe9a55e by Tim Northover
Update tests after change to llvm-cxxfilt's underscore stripping
behaviour.
The file was modifiedclang/test/CodeGen/ppc-xmmintrin.c
The file was modifiedclang/test/CodeGen/ppc-tmmintrin.c
The file was modifiedclang/test/CodeGen/ppc-pmmintrin.c
The file was modifiedclang/test/CodeGen/ppc-emmintrin.c
The file was modifiedclang/test/CodeGen/ppc-smmintrin.c
The file was modifiedclang/test/CodeGen/ppc-mmintrin.c
Commit c34478f5f6c7ef1ae8fb3605fbdec0634d543fed by Raphael Isemann
[lldb][NFC] Move ClangExpressionDeclMap's persistent decl search into
its own function
Searching persistent decls is a small subset of the things
FindExternalVisibleDecls does. It should be its own function instead of
being encapsulated in this `do { } while(false);` pattern.
The file was modifiedlldb/source/Plugins/ExpressionParser/Clang/ClangExpressionDeclMap.h
The file was modifiedlldb/source/Plugins/ExpressionParser/Clang/ClangExpressionDeclMap.cpp
Commit db73bcd98ef4ffbe91405a5adfcfdcd83bc007f4 by Tim Northover
ARM-NEON: separate soon-to-be conflicting f16 patterns. NFC.
This separates some intrinsic definitions into multiple instantiations
because they use a modifier that forces the float size to a given value.
That modifier won't work in the new NeonEmitter modifier scheme and
committing this separately allows the Python script to be run on the .td
files to perform the conversion automatically.
The file was modifiedclang/include/clang/Basic/arm_fp16.td
Commit e23d6f3184d365a9e72a67dddd870d98e80f998d by Tim Northover
NeonEmitter: remove special case on casting polymorphic builtins.
For some reason we were not casting a fairly obscure class of builtin
calls we expected to be polymorphic to vectors of char. It worked
because the only affected intrinsics weren't actually polymorphic after
all, but is unnecessarily complicated.
The file was modifiedclang/lib/CodeGen/CGBuiltin.cpp
The file was modifiedclang/utils/TableGen/NeonEmitter.cpp
Commit 3f91705ca54bc76b50c35f9e0831ab356d653c5c by Tim Northover
ARM-NEON: make type modifiers orthogonal and allow multiple modifiers.
The modifier system used to mutate types on NEON intrinsic definitions
had a separate letter for all kinds of transformations that might be
needed, and we were quite quickly running out of letters to use. This
patch converts to a much smaller set of orthogonal modifiers that can be
applied together to achieve the desired effect.
When merging with downstream it is likely to cause a conflict with any
local modifications to the .td files. There is a new script in
utils/convert_arm_neon.py that was used to convert all .td definitions
and I would suggest running it on the last downstream version of those
files before this commit rather than resolving conflicts manually.
The file was modifiedclang/include/clang/Basic/arm_neon.td
The file was addedclang/utils/convert_arm_neon.py
The file was modifiedclang/utils/TableGen/NeonEmitter.cpp
The file was modifiedclang/include/clang/Basic/arm_fp16.td
The file was modifiedclang/test/CodeGen/aarch64-neon-intrinsics.c
The file was modifiedclang/include/clang/Basic/arm_neon_incl.td
The file was modifiedclang/test/CodeGen/aarch64-neon-scalar-x-indexed-elem.c
Commit 5bab291b7bd043104abf1ca7977e8248684cae95 by Alexander.Richardson
Ignore R_MIPS_JALR relocations against non-function symbols
Summary: Current versions of clang would erroneously emit this
relocation not only against functions (loaded from the GOT) but also
against data symbols
(e.g. a table of function pointers). LLD was then changing this into a
branch-and-link instruction, causing the program to jump to the data
symbol at run time. I discovered this problem when attempting to boot
MIPS64 FreeBSD after updating the to the latest upstream master.
Reviewers: atanasyan, jrtc27, espindola
Reviewed By: atanasyan
Subscribers: emaste, sdardis, krytarowski, MaskRay, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D70406
The file was addedlld/test/ELF/mips-jalr-non-functions.s
The file was modifiedlld/ELF/Arch/Mips.cpp
Commit 6187394dd05ea20db01370b1990a79d517d98f7e by Alexander.Richardson
[UptestTestChecks][NFC] Share some common command line options code
Summary: Add a function common.parse_commandline_args() that adds
options common to all tools (--verbose and --update-only) and returns
the parsed commandline arguments. I plan to use the shared parsing of
--verbose in a follow-up commit to remove most of the `if args.verbose:`
checks in the scripts.
Reviewers: xbolva00, MaskRay
Reviewed By: MaskRay
Subscribers: llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D70428
The file was modifiedllvm/utils/update_llc_test_checks.py
The file was modifiedllvm/utils/UpdateTestChecks/common.py
The file was modifiedllvm/utils/update_analyze_test_checks.py
The file was modifiedllvm/utils/update_cc_test_checks.py
The file was modifiedllvm/utils/update_mir_test_checks.py
The file was modifiedllvm/utils/update_test_checks.py
The file was modifiedllvm/utils/update_mca_test_checks.py
Commit 50807c81eaeead17277ebf98ce1cc6272370d143 by Alexander.Richardson
[update_cc_test_checks.py] Add the --function-signature flag
Summary: This was added to update_test_checks.py in D68819 and I believe
having it in update_cc_test_checks.py is also useful.
Reviewers: jdoerfert, MaskRay
Reviewed By: MaskRay
Subscribers: llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D70429
The file was modifiedllvm/utils/update_cc_test_checks.py
Commit 82dc32e2d456c75d08bc9ffe97def409ee5a03cd by pavel
Big-endian fix to DWARFDieTest (089c0f58)
Hardcode the DWARFContext to little-endian. I don't have a BE machine to
test this on, but I believe this should address the ppc64be failure.
The file was modifiedllvm/unittests/DebugInfo/DWARF/DWARFDieTest.cpp
Commit 96e94e37e3a7d62eddd79fe40f025831327a4bfd by anna.welker
[ARM][MVE] Select vqabs
  Adds a pattern to ARMInstrMVE.td to use a VQABS
instruction if an equivalent multi-instruction
construct is found.
  Differential revision: https://reviews.llvm.org/D70181
The file was modifiedllvm/lib/Target/ARM/ARMInstrMVE.td
The file was addedllvm/test/CodeGen/Thumb2/vqabs.ll
Commit e7cc833ddafdca10be4ef1322ab96ffee774045b by Raphael Isemann
[lldb][NFC] Move searching for $__lldb_class into its own function in
ClangExpressionDeclMap
The file was modifiedlldb/source/Plugins/ExpressionParser/Clang/ClangExpressionDeclMap.h
The file was modifiedlldb/source/Plugins/ExpressionParser/Clang/ClangExpressionDeclMap.cpp
Commit 72d2929c52a9b691a2ed10c28a0a27fec8282519 by pavel
Revert "[DWARF] Add an api to get "interpreted" location lists"
The test fails on big endian machines.
This reverts commit 089c0f581492cd6e2a3d2927be3fbf60ea2d7e62 and the
subsequent attempt to fix in 82dc32e2d456c75d08bc9ffe97def409ee5a03cd.
The file was modifiedllvm/include/llvm/DebugInfo/DWARF/DWARFLocationExpression.h
The file was modifiedllvm/lib/DebugInfo/DWARF/DWARFUnit.cpp
The file was modifiedllvm/unittests/DebugInfo/DWARF/CMakeLists.txt
The file was modifiedllvm/lib/ObjectYAML/DWARFEmitter.cpp
The file was removedllvm/unittests/DebugInfo/DWARF/DWARFDieTest.cpp
The file was modifiedllvm/lib/DebugInfo/DWARF/DWARFDie.cpp
The file was modifiedllvm/include/llvm/DebugInfo/DWARF/DWARFDebugLoc.h
The file was modifiedllvm/include/llvm/DebugInfo/DWARF/DWARFDie.h
The file was modifiedllvm/include/llvm/DebugInfo/DWARF/DWARFUnit.h
The file was modifiedllvm/lib/DebugInfo/DWARF/DWARFDebugLoc.cpp
Commit f8c92b8ee242bbdc209204f09aefdc207aac42ee by llvmgnsyncbot
gn build: Merge 72d2929c52a
The file was modifiedllvm/utils/gn/secondary/llvm/unittests/DebugInfo/DWARF/BUILD.gn
Commit 257acbf6aee983227a3976d10d0086f3600f2bee by dave
[SelectionDAG] Combine U{ADD,SUB}O diamonds into {ADD,SUB}CARRY
Summary: Convert (uaddo (uaddo x, y), carryIn) into addcarry x, y,
carryIn if-and-only-if the carry flags of the first two uaddo are merged
via OR or XOR.
Work remaining: match ADD, etc.
Reviewers: craig.topper, RKSimon, spatel, niravd, jonpa, uweigand,
deadalnix, nikic, lebedev.ri, dmgreen, chfast
Reviewed By: lebedev.ri
Subscribers: chfast, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D70079
The file was modifiedllvm/test/CodeGen/X86/subcarry.ll
The file was modifiedllvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
The file was modifiedllvm/test/CodeGen/X86/addcarry.ll
Commit a21940eac149dc03d9e028023bbd059f871af1c5 by simon
[mips] Define mem_simm# operands using tblgen `foreach` loop. NFC
The file was modifiedllvm/lib/Target/Mips/MipsInstrInfo.td
Commit 6778a62eb0d222dc625b8785516f027df12aaf16 by dmitry.preobrazhensky
[AMDGPU][GFX10] Disabled v_movrel*[sdwa|dpp] opcodes in codegen
These opcodes use indirect register addressing so they need special
handling by codegen (currently missing).
Reviewers: vpykhtin, arsenm, rampitec
Differential Revision: https://reviews.llvm.org/D70400
The file was modifiedllvm/lib/Target/AMDGPU/SIInstrInfo.h
The file was modifiedllvm/lib/Target/AMDGPU/SIInstrInfo.cpp
Commit 51ad025ff313804674b4fb01f56f7b83e3ecc5e3 by Raphael Isemann
[lldb][NFC] Move searching for $__lldb_objc_class into its own function
Same as in commit e7cc833ddafdca10be4ef1322ab96ffee774045b but with
$__lldb_objc_class.
The file was modifiedlldb/source/Plugins/ExpressionParser/Clang/ClangExpressionDeclMap.cpp
The file was modifiedlldb/source/Plugins/ExpressionParser/Clang/ClangExpressionDeclMap.h
Commit b80033ef6528ed868294ba0c1e18bfcf74597a1b by spatel
[SLP] reduce duplicate CHECK lines in tests; NFC
The file was modifiedllvm/test/Transforms/SLPVectorizer/X86/insert-element-build-vector.ll
Commit a03435ec8e219e236331780626351c74a95f1b6e by pavel
Recommit "[DWARF] Add an api to get "interpreted" location lists"
This recommits 089c0f581492cd6e2a3d2927be3fbf60ea2d7e62, which was
reverted due to failing tests on big endian machines. It includes a fix
which I believe (I don't have BE machine) should fix this issue. The fix
consists of correcting the invocation DWARFYAML::EmitDebugSections,
which was missing one (default) function arguments, and so didn't
actually force the little-endian mode.
The original commit message follows.
Summary: This patch adds DWARFDie::getLocations, which returns the
location expressions for a given attribute (typically DW_AT_location).
It handles both "inline" locations and references to the external
location list sections (currently only of the DW_FORM_sec_offset type).
It is implemented on top of DWARFUnit::findLoclistFromOffset, which is
also added in this patch. I tried to make their signatures similar to
the equivalent range list functionality.
The actual location list interpretation logic is in
DWARFLocationTable::visitAbsoluteLocationList. This part is not
equivalent to the range list code, but this deviation is motivated by a
desire to reuse the same location list parsing code within lldb.
The functionality is tested via a c++ unit test of the DWARFDie API.
Reviewers: dblaikie, JDevlieghere, SouraVX
Subscribers: mgorny, hiraditya, cmtice, probinson, llvm-commits, aprantl
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D70394
The file was modifiedllvm/include/llvm/DebugInfo/DWARF/DWARFDie.h
The file was modifiedllvm/lib/DebugInfo/DWARF/DWARFUnit.cpp
The file was modifiedllvm/unittests/DebugInfo/DWARF/CMakeLists.txt
The file was modifiedllvm/lib/DebugInfo/DWARF/DWARFDie.cpp
The file was modifiedllvm/include/llvm/DebugInfo/DWARF/DWARFLocationExpression.h
The file was modifiedllvm/include/llvm/DebugInfo/DWARF/DWARFDebugLoc.h
The file was modifiedllvm/lib/DebugInfo/DWARF/DWARFDebugLoc.cpp
The file was addedllvm/unittests/DebugInfo/DWARF/DWARFDieTest.cpp
The file was modifiedllvm/include/llvm/DebugInfo/DWARF/DWARFUnit.h
The file was modifiedllvm/lib/ObjectYAML/DWARFEmitter.cpp
Commit ca33727abe4cd7202fe550972525bb23890da053 by Xiangling.Liao
[AIX] Lowering jump table, constant pool and block address in asm
This patch lowering jump table, constant pool and block address in
assembly. 1. On AIX, jump table index is always relative; 2. Put CPI and
JTI into ReadOnlySection until we support unique data sections; 3.
Create the temp symbol for block address symbol; 4. Update MIR testcases
and add related assembly part;
Differential Revision: https://reviews.llvm.org/D70243
The file was modifiedllvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
The file was modifiedllvm/test/CodeGen/PowerPC/aix-lower-constant-pool-index.ll
The file was modifiedllvm/test/CodeGen/PowerPC/aix-lower-jump-table.ll
The file was modifiedllvm/include/llvm/CodeGen/TargetLoweringObjectFileImpl.h
The file was modifiedllvm/lib/CodeGen/TargetLoweringObjectFileImpl.cpp
The file was modifiedllvm/test/CodeGen/PowerPC/aix-lower-block-address.ll
The file was modifiedllvm/lib/CodeGen/MachineModuleInfo.cpp
The file was modifiedllvm/lib/Target/PowerPC/PPCISelLowering.cpp
Commit c1ed22954a138570a721da5b3fec390d4884237e by llvmgnsyncbot
gn build: Merge a03435ec8e2
The file was modifiedllvm/utils/gn/secondary/llvm/unittests/DebugInfo/DWARF/BUILD.gn
Commit b5135a86e04761577494c70e7c0057136cc90b5b by ibiryukov
[clangd] Fix a crash in expected types
Reviewers: kadircet
Reviewed By: kadircet
Subscribers: merge_guards_bot, MaskRay, jkorous, arphaman, usaxena95,
cfe-commits
Tags: #clang
Differential Revision: https://reviews.llvm.org/D70481
The file was modifiedclang-tools-extra/clangd/unittests/CodeCompleteTests.cpp
The file was modifiedclang-tools-extra/clangd/ExpectedTypes.cpp
Commit 5665fc91fe93fa4293eb5aceff4884826d8cecb1 by xingxue
[AIX][XCOFF] Add support for generating assembly code for one-byte
mergable strings
This patch adds support for generating assembly code for one-byte
mergeable strings.
Generating assembly code for multi-byte mergeable strings and the
`XCOFF` object code for mergeable strings will be supported later.
Reviewers: hubert.reinterpretcast, jasonliu, daltenty, sfertile,
DiggerLin, Xiangling_L
Reviewed by: daltenty
Subscribers: wuzish, nemanjai, hiraditya, kbarton, jsji, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D70310
The file was addedllvm/test/CodeGen/PowerPC/aix-xcoff-mergeable-str.ll
The file was modifiedllvm/lib/CodeGen/TargetLoweringObjectFileImpl.cpp
The file was modifiedllvm/lib/Target/PowerPC/PPCAsmPrinter.cpp
Commit 750e855641be2131b3189d0310e5cc4610c4020d by Xiangling.Liao
A fix of the bug introduced by previous lowering in asm patch.
Differential Revision: https://reviews.llvm.org/D70243
The file was modifiedllvm/lib/CodeGen/TargetLoweringObjectFileImpl.cpp
Commit e74b326b1f506538f1fce11b7a70bcf7fb9b573c by jyknight
Rename 'DenormalMode' in CommandFlags.inc to 'DenormalFPMath', as its
option is actually named anyhow.
This avoids a conflict with the llvm::DenormalMode enum in
FloatingPointMode.h.
The file was modifiedllvm/include/llvm/CodeGen/CommandFlags.inc
Commit ac37755c60ba19103f08f04d07ca8f1d640153d6 by ulrich.weigand
[SystemZ] Use fneg in test cases
Now that we have fneg, prefer using it over "fsub -0.0, ...". This helps
in particular with strict FP tests, as fneg does not raise any
exceptions.
The file was modifiedllvm/test/CodeGen/SystemZ/fp-mul-10.ll
The file was modifiedllvm/test/CodeGen/SystemZ/fp-cmp-04.ll
The file was modifiedllvm/test/CodeGen/SystemZ/fp-strict-mul-10.ll
The file was modifiedllvm/test/CodeGen/SystemZ/vec-abs-05.ll
The file was modifiedllvm/test/CodeGen/SystemZ/fp-abs-02.ll
The file was modifiedllvm/test/CodeGen/SystemZ/vec-abs-06.ll
The file was modifiedllvm/test/CodeGen/SystemZ/fp-mul-09.ll
The file was modifiedllvm/test/CodeGen/SystemZ/fp-neg-01.ll
The file was modifiedllvm/test/CodeGen/SystemZ/fp-strict-mul-09.ll
The file was modifiedllvm/test/CodeGen/SystemZ/vec-mul-04.ll
The file was modifiedllvm/test/CodeGen/SystemZ/fp-neg-02.ll
The file was modifiedllvm/test/CodeGen/SystemZ/vec-neg-02.ll
The file was modifiedllvm/test/CodeGen/SystemZ/fp-cmp-05.ll
The file was modifiedllvm/test/CodeGen/SystemZ/vec-mul-05.ll
The file was modifiedllvm/test/CodeGen/SystemZ/vec-strict-mul-05.ll
The file was modifiedllvm/test/CodeGen/SystemZ/vec-strict-mul-02.ll
The file was modifiedllvm/test/CodeGen/SystemZ/vec-strict-mul-04.ll
The file was modifiedllvm/test/CodeGen/SystemZ/fp-mul-08.ll
The file was modifiedllvm/test/CodeGen/SystemZ/vec-neg-01.ll
The file was modifiedllvm/test/CodeGen/SystemZ/fp-abs-04.ll
The file was modifiedllvm/test/CodeGen/SystemZ/fp-strict-mul-08.ll
The file was modifiedllvm/test/CodeGen/SystemZ/vec-mul-02.ll
Commit c9e8e808cf8ae563329597b61b0b6b7adcc65b87 by craig.topper
[SelectionDAG][X86] Mutate strictFP nodes to non-strict in
DoInstructionSelection when the node is marked Expand rather than when
it is not Legal.
This allows operations that are marked Custom, but have some type
combinations that are legal to get past this code.
Add custom mutation code to X86's Select function for the nodes that
don't have isel patterns yet.
The file was modifiedllvm/lib/Target/X86/X86ISelDAGToDAG.cpp
The file was modifiedllvm/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp
Commit 97743089bffba797d7bc7358ddb852b7b050b0c8 by ulrich.weigand
[SystemZ] Avoid mixing strict and non-strict FP operations in tests
This is to prepare for having the IR verifier reject mixed functions.
Note that fp-strict-mul-02.ll and fp-strict-mul-04.ll still remain to be
fixed.
The file was modifiedllvm/test/CodeGen/SystemZ/fp-strict-mul-05.ll
The file was modifiedllvm/test/CodeGen/SystemZ/fp-strict-sub-03.ll
The file was modifiedllvm/test/CodeGen/SystemZ/fp-strict-mul-11.ll
The file was modifiedllvm/test/CodeGen/SystemZ/fp-strict-div-03.ll
The file was modifiedllvm/test/CodeGen/SystemZ/fp-strict-add-03.ll
The file was modifiedllvm/test/CodeGen/SystemZ/fp-strict-mul-04.ll
The file was modifiedllvm/test/CodeGen/SystemZ/fp-strict-mul-02.ll
Commit a9bb669e59f4b2270caa8a35128ca3b2de0595fe by Jonas Devlieghere
[FileCollector] Ignore empty paths.
Don't insert empty strings into the StringSet<> because that triggers an
assert in its implementation.
The file was modifiedllvm/include/llvm/Support/FileCollector.h
Commit f751a79173958526b8e8793d4e4c84b2d33dc662 by peter
scudo: Only use the Android reserved TLS slot when building libc's copy
of the allocator.
When we're not building libc's allocator, just use a regular TLS
variable. This lets the unit tests pass on Android devices whose libc
uses Scudo. Otherwise libc's copy of Scudo and the unit tests' copy will
both try to use the same TLS slot, in likely incompatible ways.
This requires using ELF TLS, so start passing -fno-emulated-tls when
building the library and the unit tests on Android.
Differential Revision: https://reviews.llvm.org/D70472
The file was modifiedcompiler-rt/lib/scudo/standalone/tests/CMakeLists.txt
The file was modifiedcompiler-rt/lib/scudo/standalone/CMakeLists.txt
The file was modifiedcompiler-rt/lib/scudo/standalone/tsd_shared.h
Commit 6de45772e0910bf7fa626e5493a2798b071eb26c by thakis
Revert "[clangd] Fix a crash in expected types"
This reverts commit b5135a86e04761577494c70e7c0057136cc90b5b. Test fails
on Windows.
The file was modifiedclang-tools-extra/clangd/unittests/CodeCompleteTests.cpp
The file was modifiedclang-tools-extra/clangd/ExpectedTypes.cpp
Commit fd8d9155a997ab0f3ef3d7dff1c56efc9b692bfe by richard
Fix parser bug that permitted 'private' as a (no-op) decl-specifier even
outside OpenCL.
The file was modifiedclang/test/Parser/cxx-decl.cpp
The file was modifiedclang/lib/Parse/ParseDecl.cpp
Commit 4a308d302c3378258c5a9af231236de4d7ff741a by michael.hliao
[AMDGPU] Keep consistent check of legal addressing mode.
Summary:
- Add test cases for GFX10, which has narrower offset range compared to
GFX9.
Reviewers: rampitec, arsenm
Subscribers: kzhuravl, jvesely, wdng, nhaehnle, yaxunl, dstuttard, tpr,
t-tye, hiraditya, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D70473
The file was addedllvm/test/CodeGen/AMDGPU/promote-constOffset-to-imm-gfx10.mir
The file was modifiedllvm/lib/Target/AMDGPU/SILoadStoreOptimizer.cpp
The file was modifiedllvm/test/CodeGen/AMDGPU/promote-constOffset-to-imm.ll
The file was modifiedllvm/lib/Target/AMDGPU/SIISelLowering.cpp
Commit af331cbe14e8376c696441bb4c26a68be733b884 by Vedant Kumar
[debugserver] Set arch based on TARGET_TRIPLE
Use TARGET_TRIPLE instead of LLVM_DEFAULT_TARGET_TRIPLE, as the latter
isn't exported by LLVMConfig.cmake, which means arch detection fails if
lldb is built separately from llvm.
The file was modifiedlldb/tools/debugserver/source/MacOSX/CMakeLists.txt
Commit 923afb4a61708cd6d5c6786c81f55a682ec46497 by mgorny
[lldb] [test] Un-XFAIL one lldb-server test on NetBSD
The file was modifiedlldb/packages/Python/lldbsuite/test/tools/lldb-server/TestLldbGdbServer.py
Commit 6f4398d1b9950d48ead91b2b550792f2bbe4778e by ditaliano
[lldb] Fix NSURL data formatter truncation issue
Remove hardcoded string prefix length assumption causing issues when
concatenating summary for NSURL in NSURLSummaryProvider. Provider relies
on concatenation of NSStringProvider results for summary, and while the
strings are prefixed with '@' in Objective-C, that is not the case in
Swift causing part of the description to be truncated.
This will be tested in the downstream fork.
Patch by Martin Svensson!
The file was modifiedlldb/source/Plugins/Language/ObjC/Cocoa.cpp
Commit 899cdf95d9ad199e6c2f87cd544455e3991626dc by Stanislav.Mekhanoshin
[AMDGPU] Fixed mfma test check. NFC.
The file was modifiedllvm/test/CodeGen/AMDGPU/llvm.amdgcn.mfma.ll
Commit 0f5aabb91a03b40635819f71187333dd9535b9de by vvereschaka
[CMake] Fix the path to CrossWinToARMLinux.cmake CMake cache.
The comment was slightly misleading.
Behalf: broadwaylamb (Sergej Jaskiewicz)
Differential Revision: https://reviews.llvm.org/D70499
The file was modifiedclang/cmake/caches/CrossWinToARMLinux.cmake
Commit 8ba56f322abf848cec78ff7f814f3ad84cd778be by listmail
Move widenable branch formation into makeGuardControlFlowExplicit helper
This is mostly NFC, but I removed the setting of the guard's calling
convention onto the WC call.  Why?  Because it was untested, and was
producing an ill defined output as the declaration's convention wasn't
been changed leaving a mismatch which is UB.
The file was modifiedllvm/include/llvm/Transforms/Utils/GuardUtils.h
The file was modifiedllvm/lib/Transforms/Scalar/MakeGuardsExplicit.cpp
The file was modifiedllvm/lib/Transforms/Utils/GuardUtils.cpp
The file was modifiedllvm/lib/Transforms/Scalar/LowerGuardIntrinsic.cpp
Commit 7488c0a6f5a6fff699ba338fe8fae952e890eb81 by craig.topper
[X86] Mark vector STRICT_FP_ROUND as Legal instead of Custom.
The Custom handler doesn't do anything for these nodes anyway.
SelectionDAGISel won't mutate them if they are Legal or Custom. X86 has
custom code for mutating them due to missing isel patterns. When the
isel patterns are added Legal will be the right answer. So go ahead a
change it now since that's where we'll end up.
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.cpp
Commit 824b25fc02dc4544adae55e6451d355f4c6d7055 by kparzysz
[Hexagon] Fix two testcase errors
This fixes issues discovered in https://reviews.llvm.org/D63973.
The file was modifiedllvm/test/CodeGen/Hexagon/sdr-global.mir
The file was modifiedllvm/test/CodeGen/Hexagon/expand-condsets-phys-reg.mir
Commit c8dfe907299e16aeb17175cb0896c17043fc7c81 by Jonas Devlieghere
[Reproducer] Generate LLDB reproducer on crash
This patch hooks the reproducer infrastructure with the signal handlers.
When lldb crashes with reproducers capture enabled, it will now generate
the reproducer and print a short message the standard out. This doesn't
affect the pretty stack traces, which are still printed before.
This patch also introduces a new reproducer sub-command that
intentionally raises a given signal to test the reproducer signal
handling.
Currently the signal handler is doing too much work. Instead of copying
over files into the reproducers in the signal handler, we should
re-invoke ourselves with a special command line flag that looks at the
VFS mapping and performs the copy.
This is a NO-OP when reproducers are disabled.
Differential revision: https://reviews.llvm.org/D70474
The file was modifiedlldb/source/API/SBReproducer.cpp
The file was addedlldb/test/Shell/Reproducer/TestCrash.test
The file was addedlldb/test/Shell/Reproducer/Inputs/GDBRemoteCrashCapture.in
The file was modifiedlldb/tools/driver/Driver.cpp
The file was modifiedlldb/test/Shell/Reproducer/TestGDBRemoteRepro.test
The file was modifiedlldb/source/Commands/Options.td
The file was modifiedlldb/include/lldb/API/SBReproducer.h
The file was modifiedlldb/source/Commands/CommandObjectReproducer.cpp
Commit 73429126c91c2065c6f6ef29b3eec1b7798502bb by puyan
[clang][IFS] Driver Pipeline: generate stubs after standard pipeline (3)
Third Landing Attempt (dropping any linker invocation from clang
driver):
Up until now, clang interface stubs has replaced the standard PP -> C ->
BE -> ASM -> LNK pipeline. With this change, it will happen in
conjunction with it. So what when you build your code you will get an
a.out or lib.so as well as an interface stub file.
Example:
clang -shared -o libfoo.so -emit-interface-stubs ...
will generate both a libfoo.so and a libfoo.ifso. The .so file will
contain the code from the standard compilation pipeline and the .ifso
file will contain the ELF stub library.
Note: For driver-test.c I've added -S in order to prevent any bot
failures on bots that don't have the proper linker for their native
triple. You could always specify a triple like x86_64-unknown-linux-gnu
and on bots like x86_64-scei-ps4 the clang driver would invoke regular
ld instead of getting the error
'Executable "orbis-ld" doesn't exist!' but on bots like ppc64be and
s390x you'd get an error "/usr/bin/ld: unrecognised emulation mode:
elf_x86_64"
Differential Revision: https://reviews.llvm.org/D70274
The file was addedclang/test/InterfaceStubs/driver-test2.c
The file was modifiedclang/lib/Driver/Driver.cpp
The file was addedclang/test/InterfaceStubs/ppc.cpp
The file was modifiedclang/lib/Driver/ToolChains/InterfaceStubs.cpp
The file was modifiedclang/test/InterfaceStubs/driver-test.c
The file was modifiedclang/lib/Driver/Types.cpp
The file was modifiedclang/test/InterfaceStubs/windows.cpp
Commit 0ebb7803e6ae4919c1c782cafecaec237664efe3 by Jonas Devlieghere
[Docs] Fix Sphinx warning (treated as error)
Fixes "undefined label" warning: if the link has no caption the label
must precede a section header.
The file was modifiedlldb/docs/index.rst
Commit b03374584d6878e1fe06868a1cc03c28cc547e88 by Jonas Devlieghere
[Driver] Fix missing space in lldb --help output.
The file was modifiedlldb/tools/driver/Driver.cpp
Commit 4a801170f36a2eed13a42730c83cd7bc57729f55 by Piotr Sobczak
[AMDGPU][SILoadStoreOptimizer] Merge TBUFFER loads/stores
Summary: Extend SILoadStoreOptimizer to merge tbuffer loads and stores.
Reviewers: nhaehnle
Reviewed By: nhaehnle
Subscribers: arsenm, kzhuravl, jvesely, wdng, nhaehnle, yaxunl,
dstuttard, tpr, t-tye, hiraditya, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D69794
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPUSearchableTables.td
The file was modifiedllvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.cpp
The file was modifiedllvm/lib/Target/AMDGPU/SILoadStoreOptimizer.cpp
The file was addedllvm/test/CodeGen/AMDGPU/merge-tbuffer.mir
The file was modifiedllvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.h
Commit 4f0b0bf5c6731e3d370558be08c9261801263b09 by eugenis
Cherry-pick gtest fix for asan tests.
Summary:
https://github.com/google/googletest/commit/681454dae48f109abf68c424c9d2e6db9a092238
Clone+exec death test allocates a single page of stack to run chdir +
exec on. This is not enough when gtest is built with ASan and run on
particular hardware.
With ASan on x86_64, ExecDeathTestChildMain has frame size of 1728
bytes.
Call to chdir() in ExecDeathTestChildMain ends up in
_dl_runtime_resolve_xsavec, which attempts to save register state on the
stack; according to cpuid(0xd) XSAVE register save area size is 2568 on
my machine.
This results in something like this in all death tests:
Result: died but not with expected error.
...
[  DEATH   ] AddressSanitizer:DEADLYSIGNAL
[  DEATH   ]
=================================================================
[  DEATH   ] ==178637==ERROR: AddressSanitizer: stack-overflow on
address ...
PiperOrigin-RevId: 278709790
Reviewers: pcc
Subscribers: llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D70332
The file was modifiedllvm/utils/unittest/googletest/src/gtest-death-test.cc
Commit f24ed3a05198003ef2c76ead91019561a45d26b5 by Jason Molenda
Handle the case where the 'g' packet doesn't get all regs. lldb would
silently accept a response to the 'g' packet (read all registers) which
was too large; this handles the case where it is too small.
Differential Revision: https://reviews.llvm.org/D70417
<rdar://problem/34916465>
The file was modifiedlldb/packages/Python/lldbsuite/test/functionalities/gdb_remote_client/gdbclientutils.py
The file was modifiedlldb/source/Plugins/Process/gdb-remote/GDBRemoteRegisterContext.cpp
The file was addedlldb/packages/Python/lldbsuite/test/functionalities/gdb_remote_client/TestJLink6Armv7RegisterDefinition.py
Commit 25f33d8318a39673fea798b24faf68154c03fdc1 by Jonas Devlieghere
[Reproducer] Limit signals to macro define sin <csignal>
SIGBUS is not part of the signal macros defined in the header <csignal>.
The file was modifiedlldb/source/Commands/CommandObjectReproducer.cpp
The file was modifiedlldb/test/Shell/Reproducer/TestCrash.test
Commit 9bdfee2a3bd13d405ce1592930182f23849d2897 by e.menezes
[AArch64] Add the pipeline model for Exynos M5
Add the scheduling and cost models for Exynos M5.
The file was addedllvm/test/tools/llvm-mca/AArch64/Exynos/asimd-st2.s
The file was addedllvm/test/tools/llvm-mca/AArch64/Exynos/aes.s
The file was addedllvm/test/tools/llvm-mca/AArch64/Exynos/float-rsqrt.s
The file was addedllvm/test/tools/llvm-mca/AArch64/Exynos/asimd-ld2.s
The file was addedllvm/test/tools/llvm-mca/AArch64/Exynos/double-rsqrt.s
The file was addedllvm/test/tools/llvm-mca/AArch64/Exynos/float-integer.s
The file was modifiedllvm/test/tools/llvm-mca/AArch64/Exynos/zero-latency-move.s
The file was modifiedllvm/test/tools/llvm-mca/AArch64/Exynos/direct-branch.s
The file was addedllvm/test/tools/llvm-mca/AArch64/Exynos/float-sqrt.s
The file was modifiedllvm/test/tools/llvm-mca/AArch64/Exynos/extended-register.s
The file was addedllvm/test/tools/llvm-mca/AArch64/Exynos/asimd-ld1.s
The file was addedllvm/test/tools/llvm-mca/AArch64/Exynos/load.s
The file was modifiedllvm/test/tools/llvm-mca/AArch64/Exynos/scheduler-queue-usage.s
The file was addedllvm/test/tools/llvm-mca/AArch64/Exynos/divide-multiply.s
The file was addedllvm/test/tools/llvm-mca/AArch64/Exynos/float-recp.s
The file was addedllvm/lib/Target/AArch64/AArch64SchedExynosM5.td
The file was addedllvm/test/tools/llvm-mca/AArch64/Exynos/double-recp.s
The file was addedllvm/test/tools/llvm-mca/AArch64/Exynos/asimd-ld4.s
The file was addedllvm/test/tools/llvm-mca/AArch64/Exynos/crc.s
The file was addedllvm/test/tools/llvm-mca/AArch64/Exynos/float-load.s
The file was modifiedllvm/lib/Target/AArch64/AArch64.td
The file was addedllvm/test/tools/llvm-mca/AArch64/Exynos/asimd-ld3.s
The file was modifiedllvm/test/tools/llvm-mca/AArch64/Exynos/shifted-register.s
The file was addedllvm/test/tools/llvm-mca/AArch64/Exynos/asimd-st4.s
The file was addedllvm/test/tools/llvm-mca/AArch64/Exynos/asimd-st1.s
The file was addedllvm/test/tools/llvm-mca/AArch64/Exynos/double-sqrt.s
The file was addedllvm/test/tools/llvm-mca/AArch64/Exynos/asimd-st3.s
The file was addedllvm/test/tools/llvm-mca/AArch64/Exynos/float-divide-multiply.s
The file was addedllvm/test/tools/llvm-mca/AArch64/Exynos/float-store.s
The file was addedllvm/test/tools/llvm-mca/AArch64/Exynos/store.s
Commit a329cf69696f1d1103c569b4c4d68d212b204710 by Lang Hames
[Support][Error] Unfriend FileError. It is not special.
FileError doesn't need direct access to Error's internals as it can
access the payload via handleErrors.
(ErrorList remains special: it is not possible to write a handler for
it, due to the special auto-unpacking treatment that it receives from
handleErrors.)
The file was modifiedllvm/include/llvm/Support/Error.h
Commit 24aafcadff3851ec3a0c42303fec63e815b19566 by mitchell
[clang-tidy] modernize-use-equals-default avoid adding redundant
semicolons
Summary:
`modernize-use-equals-default` replaces default constructors/destructors
with `= default;`. When the optional semicolon after a member function
is present, this results in two consecutive semicolons.
This patch checks to see if the next non-comment token after the code to
be replaced is a semicolon, and if so offers a replacement of `=
default` rather than `= default;`.
This patch adds trailing comments and semicolons to about 5 existing
tests.
Reviewers: malcolm.parsons, angelgarcia, aaron.ballman, alexfh
Patch by: poelmanc
Subscribers: MyDeveloperDay, JonasToth, cfe-commits
Tags: #clang
Differential Revision: https://reviews.llvm.org/D70144
The file was modifiedclang-tools-extra/clang-tidy/utils/LexerUtils.h
The file was modifiedclang-tools-extra/test/clang-tidy/checkers/modernize-use-equals-default.cpp
The file was modifiedclang-tools-extra/test/clang-tidy/checkers/modernize-use-equals-default-copy.cpp
The file was modifiedclang-tools-extra/clang-tidy/modernize/UseEqualsDefaultCheck.cpp
The file was modifiedclang-tools-extra/docs/ReleaseNotes.rst
The file was modifiedclang-tools-extra/clang-tidy/utils/LexerUtils.cpp
Commit cd8748a15f2d18861b3548eb26ed2b52e5ee50b4 by echristo
Temporarily Revert "[SLP] allow forming 2-way reduction patterns"
After speaking with Sanjay - seeing a number of miscompiles and working
on tracking down a testcase. None of the follow on patches seem to have
helped so far.
This reverts commit 7ff57705ba196ce649d6034614b3b9df57e1f84f.
The file was modifiedllvm/include/llvm/Transforms/Vectorize/SLPVectorizer.h
The file was modifiedllvm/test/Transforms/SLPVectorizer/X86/reduction2.ll
The file was modifiedllvm/test/Feature/weak_constant.ll
The file was modifiedllvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
Commit a0841dfe8594f189d79f3612fec019eda4824474 by yhs
[BPF] Fix a bug in peephole optimization
One of current peephole optimiations is to remove SLL/SRL if the sub
register has been zero extended. This phase has two bugs and one
limitations.
First, for the physical subregister used in pseudo insn COPY like below,
it permits incorrect optimization.
   %0:gpr32 = COPY $w0
   ...
   %4:gpr = MOV_32_64 %0:gpr32
   %5:gpr = SLL_ri %4:gpr(tied-def 0), 32
   %6:gpr = SRA_ri %5:gpr(tied-def 0), 32 The $w0 could be from the
return value of a previous function call and its upper 32-bit value
might contain some non-zero values. The same applies to function
arguments.
Second, the current code may permits removing SLL/SRA like below:
   %0:gpr32 = COPY $w0
   %1:gpr32 = COPY %0:gpr32
   ...
   %4:gpr = MOV_32_64 %1:gpr32
   %5:gpr = SLL_ri %4:gpr(tied-def 0), 32
   %6:gpr = SRA_ri %5:gpr(tied-def 0), 32 The reason is that it did not
follow def-use chain to skip all intermediate 32bit-to-32bit COPY
instructions.
The current implementation is also very conservative for PHI
instructions. If any PHI insn component is another PHI or COPY insn, it
will just permit SLL/SRA.
This patch fixed the issue as follows:
- During def/use chain traversal, if any physical register is read,
  SLL/SRA will be preserved as these physical registers are mostly
  from function return values or current function arguments.
- Recursively visit all COPY and PHI instructions.
The file was addedllvm/test/CodeGen/BPF/32-bit-subreg-peephole-phi-1.ll
The file was modifiedllvm/test/CodeGen/BPF/32-bit-subreg-cond-select.ll
The file was addedllvm/test/CodeGen/BPF/32-bit-subreg-peephole-phi-2.ll
The file was modifiedllvm/lib/Target/BPF/BPFMIPeephole.cpp
The file was modifiedllvm/test/CodeGen/BPF/32-bit-subreg-peephole.ll
Commit 8a0aa5310bccbb42d16d11db090419fcefdd1376 by echristo
Temporarily Revert "Temporarily Revert "[SLP] allow forming 2-way
reduction patterns"" as there were testcase changes after that need to
also be reverted.
This reverts commit cd8748a15f2d18861b3548eb26ed2b52e5ee50b4.
The file was modifiedllvm/include/llvm/Transforms/Vectorize/SLPVectorizer.h
The file was modifiedllvm/test/Feature/weak_constant.ll
The file was modifiedllvm/test/Transforms/SLPVectorizer/X86/reduction2.ll
The file was modifiedllvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
Commit 714aabacfb0f9b372cf230f1b7113e3ebd0e661d by echristo
Temporarily Revert "[SLP] allow forming 2-way reduction patterns" and
update testcases.
After speaking with Sanjay - seeing a number of miscompiles and working
on tracking down a testcase. None of the follow on patches seem to have
helped so far.
This reverts commit 8a0aa5310bccbb42d16d11db090419fcefdd1376.
The file was modifiedllvm/test/Feature/weak_constant.ll
The file was modifiedllvm/test/Transforms/SLPVectorizer/X86/reduction2.ll
The file was modifiedllvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
The file was modifiedllvm/include/llvm/Transforms/Vectorize/SLPVectorizer.h
The file was modifiedllvm/test/Transforms/SLPVectorizer/X86/reduction.ll
Commit 8259182e51ccf23c13d670f6f0401ce33f6c742f by echristo
Revert "[AArch64] Add the pipeline model for Exynos M5" as it's causing
test failures in llvm-mca.
This reverts commit 9bdfee2a3bd13d405ce1592930182f23849d2897.
The file was removedllvm/test/tools/llvm-mca/AArch64/Exynos/float-integer.s
The file was removedllvm/test/tools/llvm-mca/AArch64/Exynos/asimd-ld3.s
The file was removedllvm/test/tools/llvm-mca/AArch64/Exynos/float-divide-multiply.s
The file was removedllvm/test/tools/llvm-mca/AArch64/Exynos/asimd-ld4.s
The file was removedllvm/test/tools/llvm-mca/AArch64/Exynos/asimd-ld1.s
The file was removedllvm/test/tools/llvm-mca/AArch64/Exynos/asimd-st1.s
The file was removedllvm/test/tools/llvm-mca/AArch64/Exynos/load.s
The file was removedllvm/test/tools/llvm-mca/AArch64/Exynos/asimd-st3.s
The file was removedllvm/test/tools/llvm-mca/AArch64/Exynos/float-recp.s
The file was modifiedllvm/lib/Target/AArch64/AArch64.td
The file was removedllvm/test/tools/llvm-mca/AArch64/Exynos/store.s
The file was removedllvm/test/tools/llvm-mca/AArch64/Exynos/asimd-st4.s
The file was modifiedllvm/test/tools/llvm-mca/AArch64/Exynos/scheduler-queue-usage.s
The file was removedllvm/test/tools/llvm-mca/AArch64/Exynos/double-sqrt.s
The file was removedllvm/test/tools/llvm-mca/AArch64/Exynos/float-rsqrt.s
The file was removedllvm/test/tools/llvm-mca/AArch64/Exynos/double-rsqrt.s
The file was modifiedllvm/test/tools/llvm-mca/AArch64/Exynos/extended-register.s
The file was removedllvm/test/tools/llvm-mca/AArch64/Exynos/double-recp.s
The file was removedllvm/lib/Target/AArch64/AArch64SchedExynosM5.td
The file was removedllvm/test/tools/llvm-mca/AArch64/Exynos/float-load.s
The file was removedllvm/test/tools/llvm-mca/AArch64/Exynos/float-sqrt.s
The file was removedllvm/test/tools/llvm-mca/AArch64/Exynos/crc.s
The file was removedllvm/test/tools/llvm-mca/AArch64/Exynos/aes.s
The file was removedllvm/test/tools/llvm-mca/AArch64/Exynos/asimd-st2.s
The file was removedllvm/test/tools/llvm-mca/AArch64/Exynos/divide-multiply.s
The file was removedllvm/test/tools/llvm-mca/AArch64/Exynos/float-store.s
The file was modifiedllvm/test/tools/llvm-mca/AArch64/Exynos/direct-branch.s
The file was modifiedllvm/test/tools/llvm-mca/AArch64/Exynos/zero-latency-move.s
The file was modifiedllvm/test/tools/llvm-mca/AArch64/Exynos/shifted-register.s
The file was removedllvm/test/tools/llvm-mca/AArch64/Exynos/asimd-ld2.s
Commit a0da875a3ace9f4d4ade54f7a4764e327169a629 by peter
gn build: check-clang depends on llvm-cxxfilt.
The file was modifiedllvm/utils/gn/secondary/clang/test/BUILD.gn
Commit d9957c7405bc726422dbc2736ad62f704916fbe8 by erik.pilkington
[Sema] Add a 'Semantic' parameter to Expr::isKnownToHaveBooleanValue
Some clients of this function want to know about any expression that is
known to produce a 0/1 value, and others care about expressions that are
semantically boolean.
This fixes a -Wswitch-bool regression I introduced in 8bfb353bb33c,
pointed out by Chris Hamilton!
The file was modifiedclang/lib/Sema/SemaChecking.cpp
The file was modifiedclang/lib/AST/Expr.cpp
The file was modifiedclang/include/clang/AST/Expr.h
The file was modifiedclang/test/Sema/switch.c
Commit 049043b598ef5b12a5894c0c22db8608be70f517 by rnk
[ADT] Move to_vector from STLExtras.h to SmallVector.h
Nothing breaks, so this probably has zero impact, but it seems nice,
since to_vector is more like makeArrayRef, and should really live in
SmallVector.h.
The file was modifiedllvm/include/llvm/ADT/SmallVector.h
The file was modifiedllvm/include/llvm/ADT/STLExtras.h
Commit da4baa2a6c966154e19964fdced1119ed2f4d6ee by asbirlea
[MemorySSA] Update analysis when the terminator is a memory instruction.
Update MemorySSA when moving the terminator instruction, as that may be
a memory touching instruction. Resolves PR44029.
The file was modifiedllvm/lib/Transforms/Utils/BasicBlockUtils.cpp
The file was addedllvm/test/Analysis/MemorySSA/pr44029.ll
The file was modifiedllvm/lib/Transforms/Scalar/LoopSimplifyCFG.cpp
Commit 6760ca8c76fdc11537a2252670593c462171d64f by jkz
[docs] Tiny rewording in the portability FAQ entry
The entry reads better with these two words swapped.
The file was modifiedllvm/docs/FAQ.rst
Commit 1f4395942fc7af266bc6f520a61124b27ee90fed by listmail
Precommit tests for forthcoming widenable.condition transforms
The file was addedllvm/test/Transforms/InstCombine/widenable-conditions.ll
Commit 5da385fb56cbe92d8bd8f53954056eca1829fe1b by Adrian Prantl
Fix an offset underflow bug in DwarfExpression when describing small
values with subregisters
DwarfExpression::addMachineReg() knows how to build a larger register
that isn't expressible in DWARF by combining multiple subregisters.
However, if the entire value fits into just one subregister, it would
still emit the other subregisters, leading to all sorts of
inconsistencies down the line.
This patch fixes that by moving an already existing(!) check whether the
subregister's offset is before the end of the value to the right place.
rdar://problem/57294211
Differential Revision: https://reviews.llvm.org/D70508
The file was modifiedllvm/lib/CodeGen/AsmPrinter/DwarfExpression.cpp
The file was addedllvm/test/DebugInfo/MIR/ARM/larger-subregister.mir
The file was modifiedllvm/test/MC/X86/dwarf-size-field-overflow.test
Commit 5f3bf5967b8d07dd170f0f8a2e085e0c26f7c710 by craig.topper
[X86] Fix f128->i16 fptosi to promote the i16 to i32 before trying to
form a libcall.
Previously one of the test cases added here gave an error.
The file was modifiedllvm/test/CodeGen/X86/fp128-cast.ll
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.cpp
Commit 27da569a7a54e9dcb3b2c09fbdfd6b70bd6fd912 by craig.topper
[X86] Fix i16->f128 sitofp to promote the i16 to i32 before trying to
form a libcall.
Previously one of the test cases added here gave an error.
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.cpp
The file was modifiedllvm/test/CodeGen/X86/fp128-cast.ll
Commit 5c5cf899ef2fda1d3306b1e5c384ae062b80b672 by asbirlea
[MemorySSA] Moving at the end often means before terminator.
Moving accesses in MemorySSA at InsertionPlace::End, when an instruction
is moved into a block, almost always means insert at the end of the
block, but before the block terminator. This matters when the block
terminator is a MemoryAccess itself (an invoke), and the insertion must
be done before the terminator for the update to be correct.
Insert an additional position: InsertionPlace:BeforeTerminator and
update current usages where this applies.
Resolves PR44027.
The file was addedllvm/test/Analysis/MemorySSA/pr44027.ll
The file was modifiedllvm/include/llvm/Analysis/MemorySSA.h
The file was modifiedllvm/lib/Analysis/LoopInfo.cpp
The file was modifiedllvm/lib/Analysis/MemorySSAUpdater.cpp
The file was modifiedllvm/lib/Transforms/Scalar/GVNHoist.cpp
The file was modifiedllvm/lib/Transforms/Scalar/SimpleLoopUnswitch.cpp
The file was modifiedllvm/lib/Transforms/Scalar/LICM.cpp
Commit 76bcbaafab2db9ee1fa0813463016afb64c5fb41 by Lang Hames
[Orc][Modules] Fix Modules build fallout from a34680a33eb.
In a34680a33eb OrcError.h and Orc/RPC/*.h were split out from the rest
of ExecutionEngine in order to eliminate false dependencies for remote
JIT targets (see https://reviews.llvm.org/D68732), however this broke
modules builds (see https://reviews.llvm.org/D69817).
This patch splits these headers out into a separate module,
LLVM_OrcSupport, in order to fix the modules build.
Fixes <rdar://56377508>.
The file was modifiedllvm/lib/Support/Error.cpp
The file was modifiedllvm/lib/ExecutionEngine/OrcError/OrcError.cpp
The file was modifiedllvm/include/llvm/ExecutionEngine/Orc/OrcError.h
The file was modifiedllvm/include/llvm/module.modulemap
The file was modifiedllvm/lib/ExecutionEngine/OrcError/RPCError.cpp
Commit 8e896b19ddd940254c42cfbb11ba541b22177152 by Lang Hames
[Error] Remove a broken code fragment accidentally included in
76bcbaafab2.
The file was modifiedllvm/lib/Support/Error.cpp
Commit ee9b49eef04518123ec04372b7b4bfc337c39dc9 by aminim
Tablegen: Remove the error for duplicate include files.
This error was originally added a while(7 years) ago when including
multiple files was basically always an error. Tablegen now has
preprocessor support, which allows for building nice c/c++ style include
guards. With the current error being reported, we unfortunately need to
double guard when including files:
* In user of MyFile.td
#ifndef MYFILE_TD
include MyFile.td
#endif
* In MyFile.td
#ifndef MYFILE_TD
#define MYFILE_TD
...
#endif
Differential Revision: https://reviews.llvm.org/D70410
The file was modifiedllvm/lib/TableGen/TGLexer.h
The file was modifiedllvm/lib/TableGen/Main.cpp
The file was modifiedllvm/lib/TableGen/TGParser.h
The file was addedllvm/test/TableGen/duplicate-include.inc
The file was addedllvm/test/TableGen/duplicate-include.td
The file was modifiedllvm/lib/TableGen/TGLexer.cpp
Commit a84922916e6eddf701b39fbd7fe0222cb0fee1d6 by jyknight
Fix unused variable warning in NDEBUG mode after
8ba56f322abf848cec78ff7f814f3ad84cd778be
The file was modifiedllvm/lib/Transforms/Scalar/MakeGuardsExplicit.cpp
Commit fec3ca77bbce6917c103963b7b85b60dfb865c7b by puyan
[clang][IFS][test] GreenDragon and Fuchsia Darwin bot fix: BindArchClass
Nest.
On Darwin the clang driver does not invoke Driver::BuildActions directly
due to the need to handle Universal apps. Because of this there is a
difference in code path where Driver::BuildUniversalActions is called
instead of Driver::BuildActions. BuildUniversalActions ends up calling
Driver::BuildAction but what it does differently is it takes the driver
actions returned and wraps them each into a BindArchAction.
In Driver::BuildJobs there is a check for '-o' to determine that
multiple files are not specified when passing -o, except for Clang
Interface Stub this need to be an exception as we actually want to write
out multiple files: for every libfoo.so we have a libfoo.ifso sidecar
ifso file, etc. To allow this to happen there is a check for
IfsMergeAction, which is permitted to write out a secondary file. Except
on Darwin, the IfsMergeAction gets wrapped in the BindArchAction by
Driver::BuildUniversalActions so the check fails.
This patch is to look inside a BindArchAction in Driver::BuildJobs to
determine if there is in fact an IfsMergeAction, and if-so (pun
intended) allow the secondary sidecard ifs/ifso file to be written out.
The file was modifiedclang/lib/Driver/Driver.cpp
Commit e47d6da8a5dd6b9552f7b94e8b35453b4f09ffe4 by jyknight
D'oh. Fix assert after a84922916e6eddf701b39fbd7fe0222cb0fee1d6. (Which
was attempting to fix unused variable warning in NDEBUG mode after
8ba56f322abf848cec78ff7f814f3ad84cd778be)
The file was modifiedllvm/lib/Transforms/Scalar/MakeGuardsExplicit.cpp
Commit 252567377c5e8613c1a238bd8598120945185b39 by courbet
[DAGCombine][NFC] Use ArrayRef and correctly size SmallVectors.
In preparation for D70487.
The file was modifiedllvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
Commit 339502cc8abb375e3dc8b5d3e9ef35c2541ccbbd by ibiryukov
[clangd] Reland b5135a86e0476: Fix a crash in expected types
Reverted in 6de45772e0910bf7fa626e5493a2798b071eb26c. With a fix to
Windows tests.
Differential Revision: https://reviews.llvm.org/D70481
The file was modifiedclang-tools-extra/clangd/ExpectedTypes.cpp
The file was modifiedclang-tools-extra/clangd/unittests/CodeCompleteTests.cpp
Commit 031307579363bfafc7f671b9f37b3669e861c762 by jaskiewiczs
[libcxx] Add Sergej Jaskiewicz to CREDITS.txt
Summary: Also, test commit access
Reviewers: EricWF
Subscribers: christof, ldionne, libcxx-commits
Tags: #libc
Differential Revision: https://reviews.llvm.org/D70526
The file was modifiedlibcxx/CREDITS.TXT
Commit df876a026981b7a125b31bbb85ba4b1144edb0f9 by zakk.chen
[RISCV] Support mutilib in baremetal environment
1. Currently only support the set of multilibs same to
riscv-gnu-toolchain. 2. Fix testcase typo causes fail on Windows
Reviewers: espindola, asb, kito-cheng, lenary
Reviewed By: lenary
Differential Revision: https://reviews.llvm.org/D67508
The file was modifiedclang/test/Driver/riscv32-toolchain.c
The file was addedclang/test/Driver/Inputs/multilib_riscv_elf_sdk/lib/gcc/riscv64-unknown-elf/8.2.0/rv32iac/ilp32/crtend.o
The file was addedclang/test/Driver/Inputs/multilib_riscv_elf_sdk/lib/gcc/riscv64-unknown-elf/8.2.0/rv64imafdc/lp64d/crtend.o
The file was addedclang/test/Driver/Inputs/multilib_riscv_elf_sdk/riscv64-unknown-elf/lib/rv32imac/ilp32/crt0.o
The file was addedclang/test/Driver/Inputs/multilib_riscv_elf_sdk/lib/gcc/riscv64-unknown-elf/8.2.0/rv32i/ilp32/crtend.o
The file was addedclang/test/Driver/Inputs/multilib_riscv_elf_sdk/lib/gcc/riscv64-unknown-elf/8.2.0/rv64imac/lp64/crtbegin.o
The file was addedclang/test/Driver/Inputs/multilib_riscv_elf_sdk/lib/gcc/riscv64-unknown-elf/8.2.0/rv32imac/ilp32/crtbegin.o
The file was modifiedclang/lib/Driver/ToolChains/Gnu.cpp
The file was addedclang/test/Driver/Inputs/multilib_riscv_elf_sdk/riscv64-unknown-elf/lib/rv32im/ilp32/crt0.o
The file was modifiedclang/lib/Driver/ToolChains/RISCVToolchain.cpp
The file was addedclang/test/Driver/Inputs/multilib_riscv_elf_sdk/riscv64-unknown-elf/lib/rv32i/ilp32/crt0.o
The file was addedclang/test/Driver/Inputs/multilib_riscv_elf_sdk/riscv64-unknown-elf/lib/rv32iac/ilp32/crt0.o
The file was addedclang/test/Driver/Inputs/multilib_riscv_elf_sdk/lib/gcc/riscv64-unknown-elf/8.2.0/rv32iac/ilp32/crtbegin.o
The file was addedclang/test/Driver/Inputs/multilib_riscv_elf_sdk/lib/gcc/riscv64-unknown-elf/8.2.0/rv64imac/lp64/crtend.o
The file was addedclang/test/Driver/Inputs/multilib_riscv_elf_sdk/lib/gcc/riscv64-unknown-elf/8.2.0/rv32imafc/ilp32f/crtbegin.o
The file was addedclang/test/Driver/Inputs/multilib_riscv_elf_sdk/riscv64-unknown-elf/lib/rv64imac/lp64/crt0.o
The file was addedclang/test/Driver/Inputs/multilib_riscv_elf_sdk/lib/gcc/riscv64-unknown-elf/8.2.0/rv64imafdc/lp64d/crtbegin.o
The file was addedclang/test/Driver/Inputs/multilib_riscv_elf_sdk/riscv64-unknown-elf/bin/ld
The file was addedclang/test/Driver/Inputs/multilib_riscv_elf_sdk/lib/gcc/riscv64-unknown-elf/8.2.0/rv32i/ilp32/crtbegin.o
The file was addedclang/test/Driver/Inputs/multilib_riscv_elf_sdk/riscv64-unknown-elf/lib/rv64imafdc/lp64d/crt0.o
The file was addedclang/test/Driver/Inputs/multilib_riscv_elf_sdk/lib/gcc/riscv64-unknown-elf/8.2.0/rv32imac/ilp32/crtend.o
The file was addedclang/test/Driver/Inputs/multilib_riscv_elf_sdk/lib/gcc/riscv64-unknown-elf/8.2.0/crtend.o
The file was addedclang/test/Driver/Inputs/multilib_riscv_elf_sdk/riscv64-unknown-elf/lib/crt0.o
The file was addedclang/test/Driver/Inputs/multilib_riscv_elf_sdk/lib/gcc/riscv64-unknown-elf/8.2.0/rv32im/ilp32/crtbegin.o
The file was modifiedclang/test/Driver/riscv64-toolchain.c
The file was addedclang/test/Driver/Inputs/multilib_riscv_elf_sdk/lib/gcc/riscv64-unknown-elf/8.2.0/crtbegin.o
The file was addedclang/test/Driver/Inputs/multilib_riscv_elf_sdk/lib/gcc/riscv64-unknown-elf/8.2.0/rv32imafc/ilp32f/crtend.o
The file was addedclang/test/Driver/Inputs/multilib_riscv_elf_sdk/riscv64-unknown-elf/lib/rv32imafc/ilp32f/crt0.o
The file was addedclang/test/Driver/Inputs/multilib_riscv_elf_sdk/lib/gcc/riscv64-unknown-elf/8.2.0/rv32im/ilp32/crtend.o
Commit 82921bf2baed96b700f90b090d5dc2530223d9c0 by flo
[Support] Don't check XCR0 when detecting avx512 on Darwin.
Darwin lazily saves the AVX512 context on first use [1]: instead of
checking that it already does to figure out if the OS supports AVX512,
trust that the kernel will do the right thing and always assume the
context save support is available.
[1]
https://github.com/apple/darwin-xnu/blob/xnu-4903.221.2/osfmk/i386/fpu.c#L174
Reviewers: ab, RKSimon, craig.topper
Reviewed By: craig.topper
Differential Revision: https://reviews.llvm.org/D70453
The file was modifiedllvm/lib/Support/Host.cpp
Commit a70c3f9f45c8db3092db44110a992e9fd8ee776e by flo
[compiler-rt] Don't check XCR0 when detecting avx512 on Darwin.
Darwin lazily saves the AVX512 context on first use [1]: instead of
checking that it already does to figure out if the OS supports AVX512,
trust that the kernel will do the right thing and always assume the
context save support is available.
[1]
https://github.com/apple/darwin-xnu/blob/xnu-4903.221.2/osfmk/i386/fpu.c#L174
Reviewers: ab, RKSimon, craig.topper
Reviewed By: craig.topper
Subscribers: dberris, JDevlieghere, #sanitizers, llvm-commits
Tags: #sanitizers, #llvm
Differential Revision: https://reviews.llvm.org/D70454
The file was modifiedcompiler-rt/lib/builtins/cpu_model.c
Commit 2cada1e4da9d55b54a06b240cc061605729d50f4 by Raphael Isemann
[lldb][NFC] Early exit in
ClangExpressionDeclMap::FindExternalVisibleDecls
The file was modifiedlldb/source/Plugins/ExpressionParser/Clang/ClangExpressionDeclMap.cpp
Commit 3889ff82bf4057ead22dad91a89384ac20ebd557 by david.stenberg
[DebugInfo] Refactor DIExpression [SZ]Ext creation into function [NFC]
Summary: Also, replace the SmallVector with a normal C array.
Reviewers: vsk
Reviewed By: vsk
Subscribers: hiraditya, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D70498
The file was modifiedllvm/lib/IR/DebugInfoMetadata.cpp
The file was modifiedllvm/lib/Transforms/Utils/Local.cpp
The file was modifiedllvm/include/llvm/IR/DebugInfoMetadata.h
Commit 6821a3ccd69f2b3a92fe0c4f4276b72389cd4c76 by tcorring
[AMDGPU] Add attribute for target loop unroll threshold default
Summary: Add a function attribute to allow the target specific default
loop unroll threshold to be specified on a per-function basis. This
allows a front-end to give guidance where it has insight that is not
available to the back-end, while still allowing the target specific
heuristics to also have an effect.
Subscribers: arsenm, kzhuravl, jvesely, wdng, nhaehnle, yaxunl,
dstuttard, tpr, t-tye, hiraditya, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D68873
The file was addedllvm/test/CodeGen/AMDGPU/amdgpu-unroll-threshold.ll
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPUTargetTransformInfo.cpp
Commit ba6f906854263375cff3257d22d241a8a259cf77 by ibiryukov
[Driver] Use VFS to check if sanitizer blacklists exist
Summary: This is a follow-up to
590f279c456bbde632eca8ef89a85c478f15a249, which moved some of the
callers to use VFS.
It turned out more code in Driver calls into real filesystem APIs and
also needs an update.
Reviewers: gribozavr2, kadircet
Reviewed By: kadircet
Subscribers: ormris, mgorny, hiraditya, llvm-commits, jkorous,
cfe-commits
Tags: #clang, #llvm
Differential Revision: https://reviews.llvm.org/D70440
The file was addedclang/unittests/Driver/SanitizerArgsTest.cpp
The file was modifiedllvm/lib/Transforms/Instrumentation/DataFlowSanitizer.cpp
The file was modifiedllvm/include/llvm/Support/SpecialCaseList.h
The file was modifiedclang/lib/Basic/XRayLists.cpp
The file was modifiedllvm/lib/Support/SpecialCaseList.cpp
The file was modifiedclang/lib/Driver/SanitizerArgs.cpp
The file was modifiedclang/lib/Driver/XRayArgs.cpp
The file was modifiedclang/unittests/Driver/CMakeLists.txt
The file was modifiedclang/lib/Basic/SanitizerSpecialCaseList.cpp
Commit 337151f41e78f42df1eedbb86479888a2c5d0a04 by Raphael Isemann
[lldb][NFC] Move searching for the local variable namespace into own
function
The file was modifiedlldb/source/Plugins/ExpressionParser/Clang/ClangExpressionDeclMap.cpp
The file was modifiedlldb/source/Plugins/ExpressionParser/Clang/ClangExpressionDeclMap.h
Commit 2229391eb1632893571a435dd00f4ee71b5dbaf7 by martin
[COFF] Widen PE32Header fields to fit 64 bit versions
The PE32Header struct is only used by COFFYAML, for intermediate
storage. The struct doesn't match the on-disk struct layout as it uses
native integers instead of e.g. support::ulittle32_t, so just widen the
fields to fit values for object::pe32plus_header, in addition to
object::pe32_header.
This avoids truncating the 64 bit ImageBase for 64 bit executables.
Differential Revision: https://reviews.llvm.org/D70464
The file was modifiedllvm/test/tools/yaml2obj/COFF/basic-arm64.yaml
The file was modifiedllvm/include/llvm/BinaryFormat/COFF.h
Commit 9f3fdb0d7fab73083e354768eb5808597474e1b8 by ibiryukov
Revert "[Driver] Use VFS to check if sanitizer blacklists exist"
This reverts commit ba6f906854263375cff3257d22d241a8a259cf77. Commit
caused compilation errors on llvm tests. Will fix and re-land.
The file was modifiedclang/lib/Driver/SanitizerArgs.cpp
The file was modifiedclang/unittests/Driver/CMakeLists.txt
The file was modifiedllvm/lib/Support/SpecialCaseList.cpp
The file was modifiedclang/lib/Basic/XRayLists.cpp
The file was removedclang/unittests/Driver/SanitizerArgsTest.cpp
The file was modifiedllvm/include/llvm/Support/SpecialCaseList.h
The file was modifiedllvm/lib/Transforms/Instrumentation/DataFlowSanitizer.cpp
The file was modifiedclang/lib/Basic/SanitizerSpecialCaseList.cpp
The file was modifiedclang/lib/Driver/XRayArgs.cpp
Commit 5cf58768cb3ba31ee37facaf23f7a74f78781590 by Tim Northover
Atomics: support min/max orthogonally
We seem to have been gradually growing support for atomic min/max
operations
(exposing longstanding IR atomicrmw instructions). But until now there
have been gaps in the expected intrinsics. This adds support for the
C11-style intrinsics (i.e. taking _Atomic, rather than individually
blessed by C11 standard), and the variants that return the new value
instead of the original one.
That way, people won't be misled by trying one form and it not working,
and the front-end is more friendly to people using _Atomic types, as we
recommend.
The file was modifiedclang/include/clang/Basic/DiagnosticSemaKinds.td
The file was modifiedclang/lib/AST/Expr.cpp
The file was modifiedclang/test/CodeGen/atomic-ops.c
The file was modifiedclang/test/Sema/atomic-ops.c
The file was modifiedclang/include/clang/Basic/Builtins.def
The file was modifiedclang/docs/LanguageExtensions.rst
The file was modifiedclang/test/SemaOpenCL/atomic-ops.cl
The file was modifiedclang/lib/CodeGen/CGAtomic.cpp
The file was modifiedclang/lib/Sema/SemaChecking.cpp
Commit 35388dcbbc4ce6ce7125f718b3050be33c339464 by sven.vanhaastregt
[OpenCL] Fix address space for base method call (PR43145)
Clang was creating an UncheckedDerivedToBase ImplicitCastExpr that was
also casting between address spaces.  Insert an ImplicitCastExpr node
for doing the address space conversion.
Differential Revision: https://reviews.llvm.org/D69810
The file was modifiedclang/lib/Sema/SemaExpr.cpp
The file was modifiedclang/test/CodeGenOpenCLCXX/addrspace-derived-base.cl
Commit 446acafb82b5c116b6c94c11d4ac4db7641fa58d by benny.kra
Revert "[DependenceAnalysis] Dependecies for loads marked with
"ivnariant.load" should not be shared with general accesses. Fix for
https://bugs.llvm.org/show_bug.cgi?id=42151"
Summary: Revert "[DependenceAnalysis] Dependecies for loads marked with
"ivnariant.load" should not be shared with general accesses. Fix for
https://bugs.llvm.org/show_bug.cgi?id=42151"
This reverts commit 5f026b6d9e882941fde9b7e5dc0a2d807f7f24f5.
We're (tensorflow.org/xla team) seeing some misscompiles with the new
change, only at -O3, with fast math disabled.
I'm still trying to come up with a useful/small/external example, but
for now, the following IR:
```
; ModuleID = '__compute_module' source_filename = "__compute_module"
target datalayout =
"e-m:e-p270:32:32-p271:32:32-p272:64:64-i64:64-f80:128-n8:16:32:64-S128"
target triple = "x86_64-grtev4-linux-gnu"
@0 = private unnamed_addr constant [4 x i8] c"\DB\0F\C9@"
@1 = private unnamed_addr constant [4 x i8] c"\00\00\00?"
; Function Attrs: uwtable define void @jit_wrapped_fun.31(i8* %retval,
i8* noalias %run_options, i8** noalias %params, i8** noalias
%buffer_table, i64* noalias %prof_counters) #0 { entry:
%fusion.invar_address.dim.2 = alloca i64
%fusion.invar_address.dim.1 = alloca i64
%fusion.invar_address.dim.0 = alloca i64
%fusion.1.invar_address.dim.2 = alloca i64
%fusion.1.invar_address.dim.1 = alloca i64
%fusion.1.invar_address.dim.0 = alloca i64
%0 = getelementptr inbounds i8*, i8** %buffer_table, i64 1
%1 = load i8*, i8** %0, !invariant.load !0, !dereferenceable !1, !align
!2
%parameter.3 = bitcast i8* %1 to [2 x [1 x [4 x float]]]*
%2 = getelementptr inbounds i8*, i8** %buffer_table, i64 5
%3 = load i8*, i8** %2, !invariant.load !0, !dereferenceable !1, !align
!2
%fusion.1 = bitcast i8* %3 to [2 x [1 x [4 x float]]]*
store i64 0, i64* %fusion.1.invar_address.dim.0
br label %fusion.1.loop_header.dim.0
fusion.1.loop_header.dim.0:                       ; preds =
%fusion.1.loop_exit.dim.1, %entry
%fusion.1.indvar.dim.0 = load i64, i64* %fusion.1.invar_address.dim.0
%4 = icmp uge i64 %fusion.1.indvar.dim.0, 2
br i1 %4, label %fusion.1.loop_exit.dim.0, label
%fusion.1.loop_body.dim.0
fusion.1.loop_body.dim.0:                         ; preds =
%fusion.1.loop_header.dim.0
store i64 0, i64* %fusion.1.invar_address.dim.1
br label %fusion.1.loop_header.dim.1
fusion.1.loop_header.dim.1:                       ; preds =
%fusion.1.loop_exit.dim.2, %fusion.1.loop_body.dim.0
%fusion.1.indvar.dim.1 = load i64, i64* %fusion.1.invar_address.dim.1
%5 = icmp uge i64 %fusion.1.indvar.dim.1, 1
br i1 %5, label %fusion.1.loop_exit.dim.1, label
%fusion.1.loop_body.dim.1
fusion.1.loop_body.dim.1:                         ; preds =
%fusion.1.loop_header.dim.1
store i64 0, i64* %fusion.1.invar_address.dim.2
br label %fusion.1.loop_header.dim.2
fusion.1.loop_header.dim.2:                       ; preds =
%fusion.1.loop_body.dim.2, %fusion.1.loop_body.dim.1
%fusion.1.indvar.dim.2 = load i64, i64* %fusion.1.invar_address.dim.2
%6 = icmp uge i64 %fusion.1.indvar.dim.2, 4
br i1 %6, label %fusion.1.loop_exit.dim.2, label
%fusion.1.loop_body.dim.2
fusion.1.loop_body.dim.2:                         ; preds =
%fusion.1.loop_header.dim.2
%7 = load float, float* bitcast ([4 x i8]* @0 to float*)
%8 = getelementptr inbounds [2 x [1 x [4 x float]]], [2 x [1 x [4 x
float]]]* %parameter.3, i64 0, i64 %fusion.1.indvar.dim.0, i64 0, i64
%fusion.1.indvar.dim.2
%9 = load float, float* %8, !invariant.load !0, !noalias !3
%10 = getelementptr inbounds [2 x [1 x [4 x float]]], [2 x [1 x [4 x
float]]]* %parameter.3, i64 0, i64 %fusion.1.indvar.dim.0, i64 0, i64
%fusion.1.indvar.dim.2
%11 = load float, float* %10, !invariant.load !0, !noalias !3
%12 = fmul float %9, %11
%13 = fmul float %7, %12
%14 = call float @llvm.log.f32(float %13)
%15 = getelementptr inbounds [2 x [1 x [4 x float]]], [2 x [1 x [4 x
float]]]* %fusion.1, i64 0, i64 %fusion.1.indvar.dim.0, i64 0, i64
%fusion.1.indvar.dim.2
store float %14, float* %15, !alias.scope !7, !noalias !8
%invar.inc2 = add nuw nsw i64 %fusion.1.indvar.dim.2, 1
store i64 %invar.inc2, i64* %fusion.1.invar_address.dim.2
br label %fusion.1.loop_header.dim.2
fusion.1.loop_exit.dim.2:                         ; preds =
%fusion.1.loop_header.dim.2
%invar.inc1 = add nuw nsw i64 %fusion.1.indvar.dim.1, 1
store i64 %invar.inc1, i64* %fusion.1.invar_address.dim.1
br label %fusion.1.loop_header.dim.1
fusion.1.loop_exit.dim.1:                         ; preds =
%fusion.1.loop_header.dim.1
%invar.inc = add nuw nsw i64 %fusion.1.indvar.dim.0, 1
store i64 %invar.inc, i64* %fusion.1.invar_address.dim.0
br label %fusion.1.loop_header.dim.0
fusion.1.loop_exit.dim.0:                         ; preds =
%fusion.1.loop_header.dim.0
%16 = getelementptr inbounds i8*, i8** %buffer_table, i64 4
%17 = load i8*, i8** %16, !invariant.load !0, !dereferenceable !9,
!align !2
%parameter.1 = bitcast i8* %17 to float*
%18 = getelementptr inbounds i8*, i8** %buffer_table, i64 2
%19 = load i8*, i8** %18, !invariant.load !0, !dereferenceable !10,
!align !2
%parameter.2 = bitcast i8* %19 to [3 x [1 x float]]*
%20 = getelementptr inbounds i8*, i8** %buffer_table, i64 0
%21 = load i8*, i8** %20, !invariant.load !0, !dereferenceable !11,
!align !2
%fusion = bitcast i8* %21 to [2 x [3 x [4 x float]]]*
store i64 0, i64* %fusion.invar_address.dim.0
br label %fusion.loop_header.dim.0
fusion.loop_header.dim.0:                         ; preds =
%fusion.loop_exit.dim.1, %fusion.1.loop_exit.dim.0
%fusion.indvar.dim.0 = load i64, i64* %fusion.invar_address.dim.0
%22 = icmp uge i64 %fusion.indvar.dim.0, 2
br i1 %22, label %fusion.loop_exit.dim.0, label %fusion.loop_body.dim.0
fusion.loop_body.dim.0:                           ; preds =
%fusion.loop_header.dim.0
store i64 0, i64* %fusion.invar_address.dim.1
br label %fusion.loop_header.dim.1
fusion.loop_header.dim.1:                         ; preds =
%fusion.loop_exit.dim.2, %fusion.loop_body.dim.0
%fusion.indvar.dim.1 = load i64, i64* %fusion.invar_address.dim.1
%23 = icmp uge i64 %fusion.indvar.dim.1, 3
br i1 %23, label %fusion.loop_exit.dim.1, label %fusion.loop_body.dim.1
fusion.loop_body.dim.1:                           ; preds =
%fusion.loop_header.dim.1
store i64 0, i64* %fusion.invar_address.dim.2
br label %fusion.loop_header.dim.2
fusion.loop_header.dim.2:                         ; preds =
%fusion.loop_body.dim.2, %fusion.loop_body.dim.1
%fusion.indvar.dim.2 = load i64, i64* %fusion.invar_address.dim.2
%24 = icmp uge i64 %fusion.indvar.dim.2, 4
br i1 %24, label %fusion.loop_exit.dim.2, label %fusion.loop_body.dim.2
fusion.loop_body.dim.2:                           ; preds =
%fusion.loop_header.dim.2
%25 = mul nuw nsw i64 %fusion.indvar.dim.2, 1
%26 = add nuw nsw i64 0, %25
%27 = udiv i64 %26, 4
%28 = mul nuw nsw i64 %fusion.indvar.dim.0, 1
%29 = add nuw nsw i64 0, %28
%30 = udiv i64 %29, 2
%31 = getelementptr inbounds [2 x [1 x [4 x float]]], [2 x [1 x [4 x
float]]]* %fusion.1, i64 0, i64 %29, i64 0, i64 %26
%32 = load float, float* %31, !alias.scope !7, !noalias !8
%33 = mul nuw nsw i64 %fusion.indvar.dim.1, 1
%34 = add nuw nsw i64 0, %33
%35 = udiv i64 %34, 3
%36 = load float, float* %parameter.1, !invariant.load !0, !noalias !3
%37 = getelementptr inbounds [3 x [1 x float]], [3 x [1 x float]]*
%parameter.2, i64 0, i64 %34, i64 0
%38 = load float, float* %37, !invariant.load !0, !noalias !3
%39 = fsub float %36, %38
%40 = fmul float %39, %39
%41 = mul nuw nsw i64 %fusion.indvar.dim.2, 1
%42 = add nuw nsw i64 0, %41
%43 = udiv i64 %42, 4
%44 = mul nuw nsw i64 %fusion.indvar.dim.0, 1
%45 = add nuw nsw i64 0, %44
%46 = udiv i64 %45, 2
%47 = getelementptr inbounds [2 x [1 x [4 x float]]], [2 x [1 x [4 x
float]]]* %parameter.3, i64 0, i64 %45, i64 0, i64 %42
%48 = load float, float* %47, !invariant.load !0, !noalias !3
%49 = getelementptr inbounds [2 x [1 x [4 x float]]], [2 x [1 x [4 x
float]]]* %parameter.3, i64 0, i64 %45, i64 0, i64 %42
%50 = load float, float* %49, !invariant.load !0, !noalias !3
%51 = fmul float %48, %50
%52 = fdiv float %40, %51
%53 = fadd float %32, %52
%54 = fneg float %53
%55 = load float, float* bitcast ([4 x i8]* @1 to float*)
%56 = fmul float %54, %55
%57 = getelementptr inbounds [2 x [3 x [4 x float]]], [2 x [3 x [4 x
float]]]* %fusion, i64 0, i64 %fusion.indvar.dim.0, i64
%fusion.indvar.dim.1, i64 %fusion.indvar.dim.2
store float %56, float* %57, !alias.scope !8, !noalias !12
%invar.inc5 = add nuw nsw i64 %fusion.indvar.dim.2, 1
store i64 %invar.inc5, i64* %fusion.invar_address.dim.2
br label %fusion.loop_header.dim.2
fusion.loop_exit.dim.2:                           ; preds =
%fusion.loop_header.dim.2
%invar.inc4 = add nuw nsw i64 %fusion.indvar.dim.1, 1
store i64 %invar.inc4, i64* %fusion.invar_address.dim.1
br label %fusion.loop_header.dim.1
fusion.loop_exit.dim.1:                           ; preds =
%fusion.loop_header.dim.1
%invar.inc3 = add nuw nsw i64 %fusion.indvar.dim.0, 1
store i64 %invar.inc3, i64* %fusion.invar_address.dim.0
br label %fusion.loop_header.dim.0
fusion.loop_exit.dim.0:                           ; preds =
%fusion.loop_header.dim.0
%58 = getelementptr inbounds i8*, i8** %buffer_table, i64 3
%59 = load i8*, i8** %58, !invariant.load !0, !dereferenceable !2,
!align !2
%tuple.30 = bitcast i8* %59 to [1 x i8*]*
%60 = bitcast [2 x [3 x [4 x float]]]* %fusion to i8*
%61 = getelementptr inbounds [1 x i8*], [1 x i8*]* %tuple.30, i64 0,
i64 0
store i8* %60, i8** %61, !alias.scope !14, !noalias !8
ret void
}
; Function Attrs: nounwind readnone speculatable willreturn declare
float @llvm.log.f32(float) #1
attributes #0 = { uwtable "no-frame-pointer-elim"="false" } attributes
#1 = { nounwind readnone speculatable willreturn }
!0 = !{}
!1 = !{i64 32}
!2 = !{i64 8}
!3 = !{!4, !6}
!4 = !{!"buffer: {index:0, offset:0, size:96}", !5}
!5 = !{!"XLA global AA domain"}
!6 = !{!"buffer: {index:5, offset:0, size:32}", !5}
!7 = !{!6}
!8 = !{!4}
!9 = !{i64 4}
!10 = !{i64 12}
!11 = !{i64 96}
!12 = !{!13, !6}
!13 = !{!"buffer: {index:3, offset:0, size:8}", !5}
!14 = !{!13}
```
gets (correctly) optimized to the one below without the change:
```
; ModuleID = '__compute_module' source_filename = "__compute_module"
target datalayout =
"e-m:e-p270:32:32-p271:32:32-p272:64:64-i64:64-f80:128-n8:16:32:64-S128"
target triple = "x86_64-grtev4-linux-gnu"
; Function Attrs: nofree nounwind uwtable define void
@jit_wrapped_fun.31(i8* nocapture readnone %retval, i8* noalias
nocapture readnone %run_options, i8** noalias nocapture readnone
%params, i8** noalias nocapture readonly %buffer_table, i64* noalias
nocapture readnone %prof_counters) local_unnamed_addr #0 { entry:
%0 = getelementptr inbounds i8*, i8** %buffer_table, i64 1
%1 = bitcast i8** %0 to [2 x [1 x [4 x float]]]**
%2 = load [2 x [1 x [4 x float]]]*, [2 x [1 x [4 x float]]]** %1, align
8, !invariant.load !0, !dereferenceable !1, !align !2
%3 = getelementptr inbounds i8*, i8** %buffer_table, i64 5
%4 = bitcast i8** %3 to [2 x [1 x [4 x float]]]**
%5 = load [2 x [1 x [4 x float]]]*, [2 x [1 x [4 x float]]]** %4, align
8, !invariant.load !0, !dereferenceable !1, !align !2
%6 = bitcast [2 x [1 x [4 x float]]]* %2 to <4 x float>*
%7 = load <4 x float>, <4 x float>* %6, align 8, !invariant.load !0,
!noalias !3
%8 = fmul <4 x float> %7, %7
%9 = fmul <4 x float> %8, <float 0x401921FB60000000, float
0x401921FB60000000, float 0x401921FB60000000, float 0x401921FB60000000>
%10 = call <4 x float> @llvm.log.v4f32(<4 x float> %9)
%11 = bitcast [2 x [1 x [4 x float]]]* %5 to <4 x float>*
store <4 x float> %10, <4 x float>* %11, align 8, !alias.scope !7,
!noalias !8
%12 = getelementptr inbounds [2 x [1 x [4 x float]]], [2 x [1 x [4 x
float]]]* %2, i64 0, i64 1, i64 0, i64 0
%13 = getelementptr inbounds [2 x [1 x [4 x float]]], [2 x [1 x [4 x
float]]]* %5, i64 0, i64 1, i64 0, i64 0
%14 = bitcast float* %12 to <4 x float>*
%15 = load <4 x float>, <4 x float>* %14, align 8, !invariant.load !0,
!noalias !3
%16 = fmul <4 x float> %15, %15
%17 = fmul <4 x float> %16, <float 0x401921FB60000000, float
0x401921FB60000000, float 0x401921FB60000000, float 0x401921FB60000000>
%18 = call <4 x float> @llvm.log.v4f32(<4 x float> %17)
%19 = bitcast float* %13 to <4 x float>*
store <4 x float> %18, <4 x float>* %19, align 8, !alias.scope !7,
!noalias !8
%20 = getelementptr inbounds i8*, i8** %buffer_table, i64 4
%21 = bitcast i8** %20 to float**
%22 = load float*, float** %21, align 8, !invariant.load !0,
!dereferenceable !9, !align !2
%23 = getelementptr inbounds i8*, i8** %buffer_table, i64 2
%24 = bitcast i8** %23 to [3 x [1 x float]]**
%25 = load [3 x [1 x float]]*, [3 x [1 x float]]** %24, align 8,
!invariant.load !0, !dereferenceable !10, !align !2
%26 = load i8*, i8** %buffer_table, align 8, !invariant.load !0,
!dereferenceable !11, !align !2
%27 = load float, float* %22, align 8, !invariant.load !0, !noalias !3
%.phi.trans.insert28 = getelementptr inbounds [3 x [1 x float]], [3 x
[1 x float]]* %25, i64 0, i64 2, i64 0
%.pre29 = load float, float* %.phi.trans.insert28, align 8,
!invariant.load !0, !noalias !3
%28 = bitcast [3 x [1 x float]]* %25 to <2 x float>*
%29 = load <2 x float>, <2 x float>* %28, align 8, !invariant.load !0,
!noalias !3
%30 = insertelement <2 x float> undef, float %27, i32 0
%31 = shufflevector <2 x float> %30, <2 x float> undef, <2 x i32>
zeroinitializer
%32 = fsub <2 x float> %31, %29
%33 = fmul <2 x float> %32, %32
%shuffle30 = shufflevector <2 x float> %33, <2 x float> undef, <8 x
i32> <i32 0, i32 0, i32 0, i32 0, i32 1, i32 1, i32 1, i32 1>
%34 = fsub float %27, %.pre29
%35 = fmul float %34, %34
%36 = insertelement <4 x float> undef, float %35, i32 0
%37 = shufflevector <4 x float> %36, <4 x float> undef, <4 x i32>
zeroinitializer
%shuffle = shufflevector <4 x float> %10, <4 x float> undef, <8 x i32>
<i32 0, i32 1, i32 2, i32 3, i32 0, i32 1, i32 2, i32 3>
%38 = fmul <4 x float> %7, %7
%shuffle31 = shufflevector <4 x float> %38, <4 x float> undef, <8 x
i32> <i32 0, i32 1, i32 2, i32 3, i32 0, i32 1, i32 2, i32 3>
%39 = fdiv <8 x float> %shuffle30, %shuffle31
%40 = fadd <8 x float> %shuffle, %39
%41 = fmul <8 x float> %40, <float -5.000000e-01, float -5.000000e-01,
float -5.000000e-01, float -5.000000e-01, float -5.000000e-01, float
-5.000000e-01, float -5.000000e-01, float -5.000000e-01>
%42 = bitcast i8* %26 to <8 x float>*
store <8 x float> %41, <8 x float>* %42, align 8, !alias.scope !8,
!noalias !12
%43 = getelementptr inbounds i8, i8* %26, i64 32
%44 = fdiv <4 x float> %37, %38
%45 = fadd <4 x float> %10, %44
%46 = fmul <4 x float> %45, <float -5.000000e-01, float -5.000000e-01,
float -5.000000e-01, float -5.000000e-01>
%47 = bitcast i8* %43 to <4 x float>*
store <4 x float> %46, <4 x float>* %47, align 8, !alias.scope !8,
!noalias !12
%.phi.trans.insert = getelementptr inbounds [2 x [1 x [4 x float]]], [2
x [1 x [4 x float]]]* %5, i64 0, i64 1, i64 0, i64 0
%.phi.trans.insert12 = getelementptr inbounds [2 x [1 x [4 x float]]],
[2 x [1 x [4 x float]]]* %2, i64 0, i64 1, i64 0, i64 0
%48 = bitcast float* %.phi.trans.insert to <4 x float>*
%49 = load <4 x float>, <4 x float>* %48, align 8, !alias.scope !7,
!noalias !8
%50 = bitcast float* %.phi.trans.insert12 to <4 x float>*
%51 = load <4 x float>, <4 x float>* %50, align 8, !invariant.load !0,
!noalias !3
%shuffle.1 = shufflevector <4 x float> %49, <4 x float> undef, <8 x
i32> <i32 0, i32 1, i32 2, i32 3, i32 0, i32 1, i32 2, i32 3>
%52 = getelementptr inbounds i8, i8* %26, i64 48
%53 = fmul <4 x float> %51, %51
%shuffle31.1 = shufflevector <4 x float> %53, <4 x float> undef, <8 x
i32> <i32 0, i32 1, i32 2, i32 3, i32 0, i32 1, i32 2, i32 3>
%54 = fdiv <8 x float> %shuffle30, %shuffle31.1
%55 = fadd <8 x float> %shuffle.1, %54
%56 = fmul <8 x float> %55, <float -5.000000e-01, float -5.000000e-01,
float -5.000000e-01, float -5.000000e-01, float -5.000000e-01, float
-5.000000e-01, float -5.000000e-01, float -5.000000e-01>
%57 = bitcast i8* %52 to <8 x float>*
store <8 x float> %56, <8 x float>* %57, align 8, !alias.scope !8,
!noalias !12
%58 = getelementptr inbounds i8, i8* %26, i64 80
%59 = fdiv <4 x float> %37, %53
%60 = fadd <4 x float> %49, %59
%61 = fmul <4 x float> %60, <float -5.000000e-01, float -5.000000e-01,
float -5.000000e-01, float -5.000000e-01>
%62 = bitcast i8* %58 to <4 x float>*
store <4 x float> %61, <4 x float>* %62, align 8, !alias.scope !8,
!noalias !12
%63 = getelementptr inbounds i8*, i8** %buffer_table, i64 3
%64 = bitcast i8** %63 to [1 x i8*]**
%65 = load [1 x i8*]*, [1 x i8*]** %64, align 8, !invariant.load !0,
!dereferenceable !2, !align !2
%66 = getelementptr inbounds [1 x i8*], [1 x i8*]* %65, i64 0, i64 0
store i8* %26, i8** %66, align 8, !alias.scope !14, !noalias !8
ret void
}
; Function Attrs: nounwind readnone speculatable willreturn declare <4 x
float> @llvm.log.v4f32(<4 x float>) #1
attributes #0 = { nofree nounwind uwtable
"no-frame-pointer-elim"="false" } attributes #1 = { nounwind readnone
speculatable willreturn }
!0 = !{}
!1 = !{i64 32}
!2 = !{i64 8}
!3 = !{!4, !6}
!4 = !{!"buffer: {index:0, offset:0, size:96}", !5}
!5 = !{!"XLA global AA domain"}
!6 = !{!"buffer: {index:5, offset:0, size:32}", !5}
!7 = !{!6}
!8 = !{!4}
!9 = !{i64 4}
!10 = !{i64 12}
!11 = !{i64 96}
!12 = !{!13, !6}
!13 = !{!"buffer: {index:3, offset:0, size:8}", !5}
!14 = !{!13}
```
and (incorrectly) optimized to the one below with the change:
```
; ModuleID = '__compute_module' source_filename = "__compute_module"
target datalayout =
"e-m:e-p270:32:32-p271:32:32-p272:64:64-i64:64-f80:128-n8:16:32:64-S128"
target triple = "x86_64-grtev4-linux-gnu"
; Function Attrs: nofree nounwind uwtable define void
@jit_wrapped_fun.31(i8* nocapture readnone %retval, i8* noalias
nocapture readnone %run_options, i8** noalias nocapture readnone
%params, i8** noalias nocapture readonly %buffer_table, i64* noalias
nocapture readnone %prof_counters) local_unnamed_addr #0 { entry:
%0 = getelementptr inbounds i8*, i8** %buffer_table, i64 1
%1 = bitcast i8** %0 to [2 x [1 x [4 x float]]]**
%2 = load [2 x [1 x [4 x float]]]*, [2 x [1 x [4 x float]]]** %1, align
8, !invariant.load !0, !dereferenceable !1, !align !2
%3 = getelementptr inbounds i8*, i8** %buffer_table, i64 5
%4 = bitcast i8** %3 to [2 x [1 x [4 x float]]]**
%5 = load [2 x [1 x [4 x float]]]*, [2 x [1 x [4 x float]]]** %4, align
8, !invariant.load !0, !dereferenceable !1, !align !2
%6 = bitcast [2 x [1 x [4 x float]]]* %2 to <4 x float>*
%7 = load <4 x float>, <4 x float>* %6, align 8, !invariant.load !0,
!noalias !3
%8 = fmul <4 x float> %7, %7
%9 = fmul <4 x float> %8, <float 0x401921FB60000000, float
0x401921FB60000000, float 0x401921FB60000000, float 0x401921FB60000000>
%10 = call <4 x float> @llvm.log.v4f32(<4 x float> %9)
%11 = bitcast [2 x [1 x [4 x float]]]* %5 to <4 x float>*
store <4 x float> %10, <4 x float>* %11, align 8, !alias.scope !7,
!noalias !8
%12 = getelementptr inbounds [2 x [1 x [4 x float]]], [2 x [1 x [4 x
float]]]* %2, i64 0, i64 1, i64 0, i64 0
%13 = getelementptr inbounds [2 x [1 x [4 x float]]], [2 x [1 x [4 x
float]]]* %5, i64 0, i64 1, i64 0, i64 0
%14 = bitcast float* %12 to <4 x float>*
%15 = load <4 x float>, <4 x float>* %14, align 8, !invariant.load !0,
!noalias !3
%16 = fmul <4 x float> %15, %15
%17 = fmul <4 x float> %16, <float 0x401921FB60000000, float
0x401921FB60000000, float 0x401921FB60000000, float 0x401921FB60000000>
%18 = call <4 x float> @llvm.log.v4f32(<4 x float> %17)
%19 = bitcast float* %13 to <4 x float>*
store <4 x float> %18, <4 x float>* %19, align 8, !alias.scope !7,
!noalias !8
%20 = getelementptr inbounds i8*, i8** %buffer_table, i64 4
%21 = bitcast i8** %20 to float**
%22 = load float*, float** %21, align 8, !invariant.load !0,
!dereferenceable !9, !align !2
%23 = getelementptr inbounds i8*, i8** %buffer_table, i64 2
%24 = bitcast i8** %23 to [3 x [1 x float]]**
%25 = load [3 x [1 x float]]*, [3 x [1 x float]]** %24, align 8,
!invariant.load !0, !dereferenceable !10, !align !2
%26 = load i8*, i8** %buffer_table, align 8, !invariant.load !0,
!dereferenceable !11, !align !2
%27 = load float, float* %22, align 8, !invariant.load !0, !noalias !3
%.phi.trans.insert28 = getelementptr inbounds [3 x [1 x float]], [3 x
[1 x float]]* %25, i64 0, i64 2, i64 0
%.pre29 = load float, float* %.phi.trans.insert28, align 8,
!invariant.load !0, !noalias !3
%28 = bitcast [3 x [1 x float]]* %25 to <2 x float>*
%29 = load <2 x float>, <2 x float>* %28, align 8, !invariant.load !0,
!noalias !3
%30 = insertelement <2 x float> undef, float %27, i32 0
%31 = shufflevector <2 x float> %30, <2 x float> undef, <2 x i32>
zeroinitializer
%32 = fsub <2 x float> %31, %29
%33 = fmul <2 x float> %32, %32
%shuffle32 = shufflevector <2 x float> %33, <2 x float> undef, <8 x
i32> <i32 0, i32 0, i32 0, i32 0, i32 1, i32 1, i32 1, i32 1>
%34 = fsub float %27, %.pre29
%35 = fmul float %34, %34
%36 = insertelement <4 x float> undef, float %35, i32 0
%37 = shufflevector <4 x float> %36, <4 x float> undef, <4 x i32>
zeroinitializer
%shuffle = shufflevector <4 x float> %10, <4 x float> undef, <8 x i32>
<i32 0, i32 1, i32 2, i32 3, i32 0, i32 1, i32 2, i32 3>
%38 = getelementptr inbounds [2 x [1 x [4 x float]]], [2 x [1 x [4 x
float]]]* %5, i64 0, i64 0, i64 0, i64 3
%39 = getelementptr inbounds [2 x [1 x [4 x float]]], [2 x [1 x [4 x
float]]]* %2, i64 0, i64 0, i64 0, i64 3
%40 = fmul <4 x float> %7, %7
%41 = shufflevector <4 x float> %40, <4 x float> undef, <8 x i32> <i32
0, i32 1, i32 2, i32 3, i32 undef, i32 undef, i32 undef, i32 undef>
%42 = fdiv <8 x float> %shuffle32, %41
%43 = fadd <8 x float> %shuffle, %42
%44 = fmul <8 x float> %43, <float -5.000000e-01, float -5.000000e-01,
float -5.000000e-01, float -5.000000e-01, float -5.000000e-01, float
-5.000000e-01, float -5.000000e-01, float -5.000000e-01>
%45 = bitcast i8* %26 to <8 x float>*
store <8 x float> %44, <8 x float>* %45, align 8, !alias.scope !8,
!noalias !12
%46 = extractelement <4 x float> %10, i32 0
%47 = getelementptr inbounds i8, i8* %26, i64 32
%48 = extractelement <4 x float> %10, i32 1
%49 = extractelement <4 x float> %10, i32 2
%50 = load float, float* %38, align 4, !alias.scope !7, !noalias !8
%51 = load float, float* %39, align 4, !invariant.load !0, !noalias !3
%52 = fmul float %51, %51
%53 = insertelement <4 x float> undef, float %52, i32 3
%54 = fdiv <4 x float> %37, %53
%55 = insertelement <4 x float> undef, float %46, i32 0
%56 = insertelement <4 x float> %55, float %48, i32 1
%57 = insertelement <4 x float> %56, float %49, i32 2
%58 = insertelement <4 x float> %57, float %50, i32 3
%59 = fadd <4 x float> %58, %54
%60 = fmul <4 x float> %59, <float -5.000000e-01, float -5.000000e-01,
float -5.000000e-01, float -5.000000e-01>
%61 = bitcast i8* %47 to <4 x float>*
store <4 x float> %60, <4 x float>* %61, align 8, !alias.scope !8,
!noalias !12
%.phi.trans.insert = getelementptr inbounds [2 x [1 x [4 x float]]], [2
x [1 x [4 x float]]]* %5, i64 0, i64 1, i64 0, i64 0
%.phi.trans.insert12 = getelementptr inbounds [2 x [1 x [4 x float]]],
[2 x [1 x [4 x float]]]* %2, i64 0, i64 1, i64 0, i64 0
%62 = bitcast float* %.phi.trans.insert to <4 x float>*
%63 = load <4 x float>, <4 x float>* %62, align 8, !alias.scope !7,
!noalias !8
%64 = bitcast float* %.phi.trans.insert12 to <4 x float>*
%65 = load <4 x float>, <4 x float>* %64, align 8, !invariant.load !0,
!noalias !3
%shuffle.1 = shufflevector <4 x float> %63, <4 x float> undef, <8 x
i32> <i32 0, i32 1, i32 2, i32 3, i32 0, i32 1, i32 2, i32 3>
%66 = getelementptr inbounds i8, i8* %26, i64 48
%67 = getelementptr inbounds [2 x [1 x [4 x float]]], [2 x [1 x [4 x
float]]]* %5, i64 0, i64 1, i64 0, i64 3
%68 = getelementptr inbounds [2 x [1 x [4 x float]]], [2 x [1 x [4 x
float]]]* %2, i64 0, i64 1, i64 0, i64 3
%69 = fmul <4 x float> %65, %65
%70 = shufflevector <4 x float> %69, <4 x float> undef, <8 x i32> <i32
0, i32 1, i32 2, i32 3, i32 0, i32 1, i32 2, i32 3>
%71 = fdiv <8 x float> %shuffle32, %70
%72 = fadd <8 x float> %shuffle.1, %71
%73 = fmul <8 x float> %72, <float -5.000000e-01, float -5.000000e-01,
float -5.000000e-01, float -5.000000e-01, float -5.000000e-01, float
-5.000000e-01, float -5.000000e-01, float -5.000000e-01>
%74 = bitcast i8* %66 to <8 x float>*
store <8 x float> %73, <8 x float>* %74, align 8, !alias.scope !8,
!noalias !12
%75 = extractelement <4 x float> %69, i32 0
%76 = extractelement <4 x float> %63, i32 0
%77 = getelementptr inbounds i8, i8* %26, i64 80
%78 = extractelement <4 x float> %69, i32 1
%79 = extractelement <4 x float> %63, i32 1
%80 = extractelement <4 x float> %69, i32 2
%81 = extractelement <4 x float> %63, i32 2
%82 = load float, float* %67, align 4, !alias.scope !7, !noalias !8
%83 = load float, float* %68, align 4, !invariant.load !0, !noalias !3
%84 = fmul float %83, %83
%85 = insertelement <4 x float> undef, float %75, i32 0
%86 = insertelement <4 x float> %85, float %78, i32 1
%87 = insertelement <4 x float> %86, float %80, i32 2
%88 = insertelement <4 x float> %87, float %84, i32 3
%89 = fdiv <4 x float> %37, %88
%90 = insertelement <4 x float> undef, float %76, i32 0
%91 = insertelement <4 x float> %90, float %79, i32 1
%92 = insertelement <4 x float> %91, float %81, i32 2
%93 = insertelement <4 x float> %92, float %82, i32 3
%94 = fadd <4 x float> %93, %89
%95 = fmul <4 x float> %94, <float -5.000000e-01, float -5.000000e-01,
float -5.000000e-01, float -5.000000e-01>
%96 = bitcast i8* %77 to <4 x float>*
store <4 x float> %95, <4 x float>* %96, align 8, !alias.scope !8,
!noalias !12
%97 = getelementptr inbounds i8*, i8** %buffer_table, i64 3
%98 = bitcast i8** %97 to [1 x i8*]**
%99 = load [1 x i8*]*, [1 x i8*]** %98, align 8, !invariant.load !0,
!dereferenceable !2, !align !2
%100 = getelementptr inbounds [1 x i8*], [1 x i8*]* %99, i64 0, i64 0
store i8* %26, i8** %100, align 8, !alias.scope !14, !noalias !8
ret void
}
; Function Attrs: nounwind readnone speculatable willreturn declare <4 x
float> @llvm.log.v4f32(<4 x float>) #1
attributes #0 = { nofree nounwind uwtable
"no-frame-pointer-elim"="false" } attributes #1 = { nounwind readnone
speculatable willreturn }
!0 = !{}
!1 = !{i64 32}
!2 = !{i64 8}
!3 = !{!4, !6}
!4 = !{!"buffer: {index:0, offset:0, size:96}", !5}
!5 = !{!"XLA global AA domain"}
!6 = !{!"buffer: {index:5, offset:0, size:32}", !5}
!7 = !{!6}
!8 = !{!4}
!9 = !{i64 4}
!10 = !{i64 12}
!11 = !{i64 96}
!12 = !{!13, !6}
!13 = !{!"buffer: {index:3, offset:0, size:8}", !5}
!14 = !{!13}
```
This results in bad numerical answers when used through XLA. Again, it's
not that easy to give a small fully-reproducible example, but the
misscompare is:
``` Expected literal:
( f32[2,3,4] {
{
{ nan, -inf, -3181.35, -inf },
{ nan, -inf, -28.2577019, -inf },
{ nan, -inf, -28.2577019, -inf }
},
{
{ -inf, -inf, -inf, -inf },
{ -6.60753046e+28, -1.47314833e+23, -inf, -inf },
{ -2.43504347e+30, -5.42892693e+24, -inf, -inf }
}
}
)
Actual literal:
( f32[2,3,4] {
{
{ nan, -inf, -3181.35, -inf },
{ nan, -inf, -inf, -inf },
{ inf, -inf, -28.2577019, -inf }
},
{
{ -inf, -inf, -inf, -inf },
{ -6.60753046e+28, -1.47314833e+23, -inf, -inf },
{ -2.43504347e+30, -5.42892693e+24, -inf, -inf }
}
}
)
```
Reviewers: sanjoy.google, sanjoy, ebrevnov, jdoerfert, reames, chandlerc
Subscribers: hiraditya, Charusso, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D70516
The file was modifiedllvm/lib/Analysis/MemoryDependenceAnalysis.cpp
Commit 3d07c3cf7c9284f5202cf4b3a4db0478e8de29ea by simon
[mips] Remove addresses from the test case. NFC
It reduces "diff" after addition more tests in the future.
The file was modifiedllvm/test/MC/Mips/sym-sc.s
Commit cc80695f6f17f922ce91f18804b44af89ed21f27 by simon
[mips] Remove unused `IsPCRelativeLoad` MIPS instructions attribute. NFC
This attribute is always set to zero.
The file was modifiedllvm/lib/Target/Mips/AsmParser/MipsAsmParser.cpp
The file was modifiedllvm/lib/Target/Mips/MipsInstrFormats.td
The file was modifiedllvm/lib/Target/Mips/MCTargetDesc/MipsBaseInfo.h
Commit d9cb1b34e068be18768bb0533d5a157397e62838 by simon
[mips] Rename test case. NFC
The file was addedllvm/test/MC/Mips/sc-expansion.s
The file was removedllvm/test/MC/Mips/sym-sc.s
Commit f65cfff605f2fd802fc337c6152474e3f3d22a1c by pavel
dwarfdump --statistics: Use new location list api
Summary: This patch removes manual location list handling in the
statistics code and replaces it with the new DWARFDie api, which
provides access to a
"cooked" location list. This has the following effects:
- the code now properly handles split-dwarf location lists
- it will automatically support dwarf5 location lists once support for
those is added
- it properly handles location lists with base address selection entries
- it fixes a bug where the location list code was using the first
DW_AT_ranges range as a "base address" of the compile unit (it should
have used DW_AT_low_pc instead. The effect of this was that the
computation of the start address of a variable in its scope was broken
for these kinds of compile units. This only manifested itself on
linked files, since in object files the first DW_AT_ranges range
normally starts at 0.
Since pretty much every kind of location list was broken in some way,
it's hard to verify that the new implementation is correct -- the output
will be different in all non-trivial cases, and mostly with good reason.
Most of the existing statistics tests continue to pass though, and a
visual inspection of the statistics for non-trivial inputs shows that
the data is more "reasonable" now. I have updated the "dwo statistics"
test to include the new numbers, as the previous ones were completely
bogus, and I have added a targeted test for the "base address" bug.
Reviewers: dblaikie, cmtice, vsk
Subscribers: aprantl, SouraVX, JDevlieghere, djtodoro, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D70444
The file was addedllvm/test/tools/llvm-dwarfdump/X86/statistics-base-address.s
The file was modifiedllvm/tools/llvm-dwarfdump/Statistics.cpp
The file was modifiedllvm/test/tools/llvm-dwarfdump/X86/statistics-dwo.test
Commit aa981c1802d7353c777e399f2568e5a0e12dea21 by ibiryukov
Reland 9f3fdb0d7fab: [Driver] Use VFS to check if sanitizer blacklists
exist
With updates to various LLVM tools that use SpecialCastList.
It was tempting to use RealFileSystem as the default, but that makes it
too easy to accidentally forget passing VFS in clang code.
The file was modifiedclang/unittests/Driver/CMakeLists.txt
The file was modifiedllvm/lib/Support/SpecialCaseList.cpp
The file was modifiedllvm/include/llvm/Support/SpecialCaseList.h
The file was modifiedllvm/unittests/Support/SpecialCaseListTest.cpp
The file was modifiedllvm/tools/sancov/sancov.cpp
The file was modifiedclang/lib/Basic/SanitizerSpecialCaseList.cpp
The file was modifiedllvm/tools/llvm-cov/CodeCoverage.cpp
The file was modifiedclang/lib/Basic/XRayLists.cpp
The file was modifiedllvm/tools/llvm-cfi-verify/llvm-cfi-verify.cpp
The file was modifiedclang/lib/Driver/XRayArgs.cpp
The file was addedclang/unittests/Driver/SanitizerArgsTest.cpp
The file was modifiedclang/lib/Driver/SanitizerArgs.cpp
The file was modifiedllvm/lib/Transforms/Instrumentation/DataFlowSanitizer.cpp
Commit a0408ab7f9863954b9d978d78761ed7b893f13b1 by Raphael Isemann
[lldb][NFC] Move searching the ClangModulesDeclVendor into own function
The file was modifiedlldb/source/Plugins/ExpressionParser/Clang/ClangExpressionDeclMap.h
The file was modifiedlldb/source/Plugins/ExpressionParser/Clang/ClangExpressionDeclMap.cpp
Commit 2e298a6a51065a25240d15872cb350e0761ea04d by ibiryukov
[Driver] Fix a shadowing warning. NFC
Found by the following buildbot:
http://lab.llvm.org:8011/builders/clang-cmake-x86_64-sde-avx512-linux/builds/30084
The file was modifiedclang/unittests/Driver/SanitizerArgsTest.cpp
Commit 7fa976d57a1e2ab735212e5d9fc13cc38c4c81e9 by Raphael Isemann
[lldb][NFC] Move searching local variables into own function
The file was modifiedlldb/source/Plugins/ExpressionParser/Clang/ClangExpressionDeclMap.h
The file was modifiedlldb/source/Plugins/ExpressionParser/Clang/ClangExpressionDeclMap.cpp
Commit ffc4ff868fcca29080dcc90e223b582c4ccfc574 by Tatyana Krasnukha
[lldb][NFC] Remove test directory completely
The test was moved to "completion-in-lambda-and-unnamed-class" by
D66175.
+ Fix typo in the directory name.
The file was removedlldb/packages/Python/lldbsuite/test/commands/expression/completion-in-lambda-and-unnnamed-class/main.cpp
The file was removedlldb/packages/Python/lldbsuite/test/commands/expression/completion-crash-lambda/Makefile
The file was addedlldb/packages/Python/lldbsuite/test/commands/expression/completion-in-lambda-and-unnamed-class/TestCompletionInLambdaAndUnnamedClass.py
The file was removedlldb/packages/Python/lldbsuite/test/commands/expression/completion-in-lambda-and-unnnamed-class/TestCompletionInLambdaAndUnnamedClass.py
The file was addedlldb/packages/Python/lldbsuite/test/commands/expression/completion-in-lambda-and-unnamed-class/main.cpp
Commit 013f4ba9c21f91accc516e5a70c70efc69d92b69 by llvm-dev
Fix Wshadow warning against global None variable. NFC.
The file was modifiedclang/include/clang/AST/DeclTemplate.h
Commit af029860593e595aa496d96b4fa2386e2a3546ad by llvm-dev
Statistic - Fix MSVC shadow warning against global PrintOnExit static
variable. NFC.
The file was modifiedllvm/include/llvm/ADT/Statistic.h
The file was modifiedllvm/lib/Support/Statistic.cpp
Commit 12a88f0128eaf730976094194e8c9de2798579ac by courbet
[DAGCombiner] Add tests for thumb load-combine.
The file was modifiedllvm/test/CodeGen/ARM/load-combine.ll
The file was modifiedllvm/test/CodeGen/ARM/load-combine-big-endian.ll
Commit bdb1f1dcb9f1164b9df6b49eea7b38e16574bdf2 by zakk.chen
Revert "[RISCV] Support mutilib in baremetal environment"
This reverts commit df876a026981b7a125b31bbb85ba4b1144edb0f9.
Clang::riscv32-toolchain.c Clang::riscv64-toolchain.c fails on Windows.
The file was removedclang/test/Driver/Inputs/multilib_riscv_elf_sdk/lib/gcc/riscv64-unknown-elf/8.2.0/rv32im/ilp32/crtend.o
The file was removedclang/test/Driver/Inputs/multilib_riscv_elf_sdk/riscv64-unknown-elf/lib/rv32imafc/ilp32f/crt0.o
The file was removedclang/test/Driver/Inputs/multilib_riscv_elf_sdk/lib/gcc/riscv64-unknown-elf/8.2.0/rv32imac/ilp32/crtbegin.o
The file was removedclang/test/Driver/Inputs/multilib_riscv_elf_sdk/lib/gcc/riscv64-unknown-elf/8.2.0/rv64imac/lp64/crtend.o
The file was removedclang/test/Driver/Inputs/multilib_riscv_elf_sdk/riscv64-unknown-elf/lib/rv32i/ilp32/crt0.o
The file was removedclang/test/Driver/Inputs/multilib_riscv_elf_sdk/lib/gcc/riscv64-unknown-elf/8.2.0/rv32imafc/ilp32f/crtbegin.o
The file was removedclang/test/Driver/Inputs/multilib_riscv_elf_sdk/lib/gcc/riscv64-unknown-elf/8.2.0/rv32iac/ilp32/crtbegin.o
The file was removedclang/test/Driver/Inputs/multilib_riscv_elf_sdk/lib/gcc/riscv64-unknown-elf/8.2.0/rv64imafdc/lp64d/crtbegin.o
The file was removedclang/test/Driver/Inputs/multilib_riscv_elf_sdk/riscv64-unknown-elf/bin/ld
The file was removedclang/test/Driver/Inputs/multilib_riscv_elf_sdk/riscv64-unknown-elf/lib/rv32imac/ilp32/crt0.o
The file was removedclang/test/Driver/Inputs/multilib_riscv_elf_sdk/lib/gcc/riscv64-unknown-elf/8.2.0/rv32imafc/ilp32f/crtend.o
The file was removedclang/test/Driver/Inputs/multilib_riscv_elf_sdk/lib/gcc/riscv64-unknown-elf/8.2.0/crtend.o
The file was removedclang/test/Driver/Inputs/multilib_riscv_elf_sdk/lib/gcc/riscv64-unknown-elf/8.2.0/crtbegin.o
The file was removedclang/test/Driver/Inputs/multilib_riscv_elf_sdk/lib/gcc/riscv64-unknown-elf/8.2.0/rv32i/ilp32/crtbegin.o
The file was removedclang/test/Driver/Inputs/multilib_riscv_elf_sdk/lib/gcc/riscv64-unknown-elf/8.2.0/rv32im/ilp32/crtbegin.o
The file was removedclang/test/Driver/Inputs/multilib_riscv_elf_sdk/riscv64-unknown-elf/lib/rv32iac/ilp32/crt0.o
The file was removedclang/test/Driver/Inputs/multilib_riscv_elf_sdk/riscv64-unknown-elf/lib/rv32im/ilp32/crt0.o
The file was removedclang/test/Driver/Inputs/multilib_riscv_elf_sdk/lib/gcc/riscv64-unknown-elf/8.2.0/rv64imafdc/lp64d/crtend.o
The file was modifiedclang/lib/Driver/ToolChains/Gnu.cpp
The file was removedclang/test/Driver/Inputs/multilib_riscv_elf_sdk/lib/gcc/riscv64-unknown-elf/8.2.0/rv32imac/ilp32/crtend.o
The file was removedclang/test/Driver/Inputs/multilib_riscv_elf_sdk/lib/gcc/riscv64-unknown-elf/8.2.0/rv64imac/lp64/crtbegin.o
The file was removedclang/test/Driver/Inputs/multilib_riscv_elf_sdk/riscv64-unknown-elf/lib/crt0.o
The file was removedclang/test/Driver/Inputs/multilib_riscv_elf_sdk/lib/gcc/riscv64-unknown-elf/8.2.0/rv32iac/ilp32/crtend.o
The file was modifiedclang/lib/Driver/ToolChains/RISCVToolchain.cpp
The file was removedclang/test/Driver/Inputs/multilib_riscv_elf_sdk/riscv64-unknown-elf/lib/rv64imac/lp64/crt0.o
The file was removedclang/test/Driver/Inputs/multilib_riscv_elf_sdk/riscv64-unknown-elf/lib/rv64imafdc/lp64d/crt0.o
The file was modifiedclang/test/Driver/riscv32-toolchain.c
The file was removedclang/test/Driver/Inputs/multilib_riscv_elf_sdk/lib/gcc/riscv64-unknown-elf/8.2.0/rv32i/ilp32/crtend.o
The file was modifiedclang/test/Driver/riscv64-toolchain.c
Commit 161742a612d198a8a89a1be5b2a893ceec8d852d by dmitrig
Make coding standards document more inclusive
Summary: Patch by Doug Gregor, Tres Popp, and Dmitri Gribenko.
Reviewers: chandlerc
Subscribers: hfinkel, bmcreusillet, arsenm, doug.gregor, mgrang,
arphaman, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D69354
The file was modifiedllvm/docs/index.rst
The file was modifiedllvm/docs/CodingStandards.rst
Commit 24e98867937d5bb89605fd7be7e9ebdd3d5fb935 by Raphael Isemann
[lldb][NFC] Reduce scope of some variables in
ClangExpressionDeclMap::FindExternalVisibleDecls
The file was modifiedlldb/source/Plugins/ExpressionParser/Clang/ClangExpressionDeclMap.cpp
Commit 7b957ddc981d65276ca5aa0e7208890269cc9682 by a.v.lapshin
[Debuginfo][NFC] removes redundant semicolon.
The file was modifiedllvm/lib/DebugInfo/DWARF/DWARFVerifier.cpp
Commit c63f1b160eb68cfac30113f259abae508d8be798 by ehudkatz
[DeclCXX] Remove unknown external linkage specifications
Partial revert of r372681 "Support for DWARF-5 C++ language tags".
The change introduced new external linkage languages ("C++11" and
"C++14") which not supported in C++.
It also changed the definition of the existing enum to use the DWARF
constants. The problem is that "LinkageSpecDeclBits.Language" (the field
that reserves this enum) is actually defined as 3 bits length
(bitfield), which cannot contain the new DWARF constants. Defining the
enum as integer literals is more appropriate for maintaining valid
values.
Differential Revision: https://reviews.llvm.org/D69935
The file was modifiedclang-tools-extra/modularize/Modularize.cpp
The file was modifiedclang/lib/CodeGen/CodeGenModule.cpp
The file was modifiedclang/include/clang/AST/DeclCXX.h
The file was modifiedclang/lib/Sema/SemaModule.cpp
The file was modifiedclang/lib/AST/TextNodeDumper.cpp
The file was modifiedclang/lib/AST/DeclPrinter.cpp
The file was modifiedclang/lib/AST/JSONNodeDumper.cpp
The file was modifiedclang/lib/Sema/SemaDeclCXX.cpp
Commit 5fb7dd8a40d2f35eea47b9c280722bd735e387a0 by Raphael Isemann
[lldb][NFC] Move searching functions in ClangExpressionDeclMap to own
function
The file was modifiedlldb/source/Plugins/ExpressionParser/Clang/ClangExpressionDeclMap.h
The file was modifiedlldb/source/Plugins/ExpressionParser/Clang/ClangExpressionDeclMap.cpp
Commit 8cf8ec40a1fee9706237d30385e78e1de214d8f7 by Raphael Isemann
[lldb][NFC] Modernize string handling in
ClangExpressionDeclMap::FindExternalVisibleDecl
The file was modifiedlldb/source/Plugins/ExpressionParser/Clang/ClangExpressionDeclMap.cpp
Commit 901cd3b3f62d0c700e5d2c3f97eff97d634bec5e by sjoerd.meijer
[LV] PreferPredicateOverEpilog respecting option
Follow-up of cb47b8783: don't query TTI->preferPredicateOverEpilogue
when option -prefer-predicate-over-epilog is set to false, i.e. when we
prefer not to predicate the loop.
Differential Revision: https://reviews.llvm.org/D70382
The file was modifiedllvm/test/Transforms/LoopVectorize/ARM/prefer-tail-loop-folding.ll
The file was modifiedllvm/lib/Transforms/Vectorize/LoopVectorize.cpp
Commit b25f985848767f36dcdcbac213ddb03bcdab617a by courbet
[DAGCombiner] Use the right thumbv7meb triple for ARM big-endian test.
The file was modifiedllvm/test/CodeGen/ARM/load-combine-big-endian.ll
Commit 6ba5cbf3ea2315acf1b7f1c39c6fec6cca5560ca by Milos.Stojanovic
[mips] Add a 'generic' Mips CPU
Having a generic CPU removes a warning when creating a subtarget without
the CPU being explicitly specified.
Differential Revision: https://reviews.llvm.org/D70490
The file was modifiedllvm/test/CodeGen/Mips/cpus.ll
The file was modifiedllvm/lib/Target/Mips/Mips.td
Commit 103f3c9e3b3ce663b5451e321e3800e09f851b8a by a.bataev
[OPENMP50]Add if clause in for simd directive.
According to OpenMP 5.0, if clause can be used in for simd directive. If
condition in the if clause if false, the non-vectorized version of the
loop must be executed.
The file was modifiedclang/include/clang/Basic/OpenMPKinds.def
The file was addedclang/test/OpenMP/for_simd_if_messages.cpp
The file was modifiedclang/lib/Sema/SemaOpenMP.cpp
The file was modifiedclang/lib/CodeGen/CGStmtOpenMP.cpp
The file was modifiedclang/lib/Basic/OpenMPKinds.cpp
The file was modifiedclang/test/OpenMP/for_simd_ast_print.cpp
The file was modifiedclang/test/OpenMP/for_simd_codegen.cpp
Commit e8d1578131247d089209952476ba9191ad0295be by kparzysz
[Hexagon] Remove incorrect intrinsic definition and invalid testcase
The intrinsic int_hexagon_S2_asr_i_vh was mapped to S2_asr_r_vh, which
is wrong. The testcase vasrh.select.ll was using an invalid immediate
for that intrinsic. This is not a proper testcase, since at the MIR
level such use of this intrinsic should never appear.
Together with 824b25fc02, this completes the fix for llvm.org/PR44090.
The file was removedllvm/test/CodeGen/Hexagon/vasrh.select.ll
The file was modifiedllvm/lib/Target/Hexagon/HexagonIntrinsics.td
Commit d3fec7fb456138c83b84e38ce785ea6bfa59c30b by jyknight
LLD: Don't use the stderrOS stream in link before it's reassigned.
Remove the lld::enableColors function, as it just obscures which stream
it's affecting, and replace with explicit calls to the stream's
enable_colors.
Also, assign the stderrOS and stdoutOS globals first in link function,
just to ensure nothing might use them.
(Either change individually fixes the issue of using the old stream, but
both together seems best.)
Follow-up to b11386f9be9b2dc7276a758d64f66833da10bdea.
Differential Revision: https://reviews.llvm.org/D70492
The file was modifiedlld/COFF/Driver.cpp
The file was modifiedlld/include/lld/Common/ErrorHandler.h
The file was modifiedlld/wasm/Driver.cpp
The file was modifiedlld/Common/ErrorHandler.cpp
The file was modifiedlld/lib/Driver/DarwinLdDriver.cpp
The file was modifiedlld/ELF/DriverUtils.cpp
The file was modifiedlld/MinGW/Driver.cpp
The file was modifiedlld/ELF/Driver.cpp
The file was modifiedlld/COFF/DriverUtils.cpp
Commit d4e006e84461bb98977388bd8742413d45c245c4 by llvm-dev
Fix unused variable warning. NFCI.
The file was modifiedclang-tools-extra/clangd/Hover.cpp
Commit 4ae0a1325666f2f5d2c5831ba6ca8c7e90790b8b by spatel
[InstCombine] add assert in SimplifyDemandedVectorElts and improve
readability; NFC
The file was modifiedllvm/lib/Transforms/InstCombine/InstCombineSimplifyDemanded.cpp
Commit 77d049d0c653798698fa24556115874828aae87b by a.bataev
[OPENMP]Fix datasharing checks for if clause in parallel taskloop
directives.
If the default datasharing is set to none, the datasharing attributes
for variables in the condition of the if clause for the inner taskloop
directive must be verified.
The file was modifiedclang/lib/Sema/SemaOpenMP.cpp
The file was modifiedclang/test/OpenMP/parallel_master_taskloop_loop_messages.cpp
The file was modifiedclang/test/OpenMP/parallel_master_taskloop_simd_loop_messages.cpp
Commit 1b9ef3bbb595206b0097b7adec2c1b69eae6fab4 by Adrian Prantl
Reduce the number of iterations in testcase. (NFC)
The file was modifiedllvm/test/MC/X86/dwarf-size-field-overflow.test
Commit 3b69f0c5550a229dd6d39e361182cdd7cecc36a4 by amccarth
[NFC] Refactor and improve comments in CommandObjectTarget
Made small improvements while debugging through
CommandObjectTarget::AddModuleSymbols.
1.  Refactored error case for an early out, reducing the indentation of
the rest of this long function. 2.  Clarified some comments by
correcting spelling and punctuation. 3.  Reduced duplicate code at the
end of the function.
Tested with `ninja check-lldb`
Differential Review: https://reviews.llvm.org/D70458
The file was modifiedlldb/source/Commands/CommandObjectTarget.cpp
Commit c4afc6566a64e6be3f77271781a147bb5ff98b0c by michael.hliao
Fix compilation warning. NFC.
The file was modifiedclang/lib/Driver/Driver.cpp
Commit 898de302919b3caf09b820757c58190cd8621255 by bjorn.a.pettersson
[BranchFolding] Fix PR43964 about branch folder not being debug
invariant
Summary: The fix in BranchFolder related to non debug invariant problems
done in commit ec32dff0b075055 actually introduced some new problems
with debug invariance.
Before that patch ComputeCommonTailLength would move iterators back,
past debug instructions, in order to make ProfitableToMerge make
consistent answers "when one block differs from the other only by
whether debugging pseudos are present at the beginning". But the changes
in ec32dff0b075055 undid that by moving the iterators forward again.
This patch refactors ComputeCommonTailLength. The function was really
complex, considering that the SkipTopCFIAndReturn part always moved the
iterators forward to the first "real" instruction in the found tail
after ec32dff0b075055.
The patch also restores the logic to "back past possible debugging
pseudos at beginning of block" to make sure ProfitableToMerge gives
consistent answers independent of DBG_VALUE instructions before the
tail. That is now done by ProfitableToMerge instead of being hidden as a
side-effect in ComputeCommonTailLength.
Reviewers: probinson, yechunliang, jmorse
Reviewed By: jmorse
Subscribers: Orlando, mehdi_amini, dexonsmith, aprantl, hiraditya,
llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D70091
The file was addedllvm/test/CodeGen/X86/branchfolding-debug-invariant.mir
The file was modifiedllvm/lib/CodeGen/BranchFolding.cpp
Commit 242002770ba00516339875a064f9ae0efd78a8dc by maskray
[llvm-objcopy][MachO] Fix symbol order in the symbol table
Only consider isUndefinedSymbol() when the symbol is not local. This
fixes an assert failure when copying the symbol table, if a n_type=0x20
symbol is followed by a n_type=0x64 symbol.
Reviewed By: alexshap, seiya
Differential Revision: https://reviews.llvm.org/D70475
The file was modifiedllvm/test/tools/llvm-objcopy/MachO/strip-all.test
The file was modifiedllvm/test/tools/llvm-objcopy/MachO/Inputs/strip-all.yaml
The file was modifiedllvm/tools/llvm-objcopy/MachO/MachOLayoutBuilder.cpp
Commit 30ccee71ca0218248c39768102488ef589ea9c1b by maskray
[llvm-objcopy][MachO] Implement --strip-debug
Reviewed By: alexshap
Differential Revision: https://reviews.llvm.org/D70476
The file was addedllvm/test/tools/llvm-objcopy/MachO/strip-debug.test
The file was modifiedllvm/tools/llvm-objcopy/MachO/MachOObjcopy.cpp
Commit 4dc2fb123dcfe9a97ad6f3a1135053b74efd0bc9 by maskray
[ELF] Error if -Ttext-segment is specified
In GNU ld, -Ttext sets the address of the .text section and
-Ttext-segment sets the address of the text segment (RX).
gold only supports the -Ttext-segment semantic and treats -Ttext as an
alias for -Ttext-segment.
lld only supports the -Ttext semantic and treats -Ttext-segment as an
alias for -Ttext.  The text segment will be assigned to an address less
than the specified -Ttext-segment value.
This patch drops the -Ttext-segment alias.
The text segment is traditionally the first segment. Users who specify
-Ttext-segment may actually want to specify --image-base, the lld way to
express this. Unfortunately currently this is supported by GNU ld's COFF
port but not by its ELF port. gold does not support this option. With -z
separate-code, the behavior of GNU ld -Ttext-segment is weird (see
https://sourceware.org/bugzilla/show_bug.cgi?id=25207)
rL289827 introduced the alias for linking qemu's non-pie user mode
binaries. As explained previously, this actually assigns the text
segment to an address less than 0x60000000. I feel that a better fix is
on the qemu side:
https://lists.nongnu.org/archive/html/qemu-devel/2019-11/msg02480.html
Reviewed By: grimar, ruiu
Differential Revision: https://reviews.llvm.org/D70468
The file was modifiedlld/ELF/Options.td
The file was addedlld/test/ELF/ttext-segment.s
The file was modifiedlld/test/ELF/sectionstart.s
The file was modifiedlld/ELF/Driver.cpp
Commit f1a9a83232230e1c848a91270ebe0d4089f0a803 by listmail
[SCEV] Be robust against IR generated by simple-loop-unswitch
Simple loop unswitch likes to leave around unsimplified and/or/xors.
SCEV today bails out on these idioms which is unfortunate in general,
and specifically for the unswitch interaction.
Differential Revision: https://reviews.llvm.org/D70459
The file was modifiedllvm/lib/Analysis/ScalarEvolution.cpp
The file was modifiedllvm/test/Analysis/ScalarEvolution/trip-count-andor.ll
Commit bb775bee21258f93cd5844b3540c0ec2569c1e22 by Jonas Devlieghere
[Docs] Generate the LLDB man page with Sphinx
This patch replaces the existing out-of-date man page for lldb and
replaces it with an RST file from which sphinx generates the actual
troff file. This is similar to how man pages are generated for the rest
of the LLVM utilities.
The man page is generated by building the `docs-lldb-man` target.
Differential revision: https://reviews.llvm.org/D70514
The file was modifiedlldb/tools/driver/Options.td
The file was removedlldb/docs/lldb.1
The file was modifiedlldb/docs/conf.py
The file was modifiedlldb/docs/CMakeLists.txt
The file was addedlldb/docs/man/lldb.rst
Commit 46240c38721fe9919f9c63277bec7bbf3e62073b by kostyak
[scudo][standalone] Minor optimization & improvements
Summary: A few small improvements and optimizations:
- when refilling the free list, push back the last batch and return
the front one: this allows to keep the allocations towards the front
of the region;
- instead of using 48 entries in the shuffle array, use a multiple of
`MaxNumCached`;
- make the maximum number of batches to create on refil a constant;
ultimately it should be configurable, but that's for later;
- `initCache` doesn't need to zero out the cache, it's already done.
- it turns out that when using `||` or `&&`, the compiler is adamant
on adding a short circuit for every part of the expression. Which
ends up making somewhat annoying asm with lots of test and
conditional jump. I am changing that to bitwise `|` or `&` in two
place so that the generated code looks better. Added comments since
it might feel weird to people.
This yields to some small performance gains overall, nothing drastic
though.
Reviewers: hctim, morehouse, cferris, eugenis
Subscribers: #sanitizers, llvm-commits
Tags: #sanitizers, #llvm
Differential Revision: https://reviews.llvm.org/D70452
The file was modifiedcompiler-rt/lib/scudo/standalone/primary32.h
The file was modifiedcompiler-rt/lib/scudo/standalone/primary64.h
The file was modifiedcompiler-rt/lib/scudo/standalone/combined.h
Commit 70d173fb1f7b920c0a56fb5b0b6776985728716e by listmail
[SCEV] Add a mode to skip classification when printing analysis
For the various trip-count tests, the classification isn't useful and
makes the auto-generated tests super verbose.  By skipping it, we make
the auto-gen tests closer to the manually written ones.  Up next:
auto-genning a bunch of the existings tests.
The file was modifiedllvm/lib/Analysis/ScalarEvolution.cpp
The file was modifiedllvm/test/Analysis/ScalarEvolution/trip-count-andor.ll
Commit 4e8231b5cf0f5f62c7a51a857e29f5be5cb55734 by a.bataev
[OPENMP50]Add device/kind context selector support.
Summary: Added basic parsing/sema support for device/kind context
selector.
Reviewers: jdoerfert
Subscribers: rampitec, aheejin, fedor.sergeev, simoncook, guansong,
s.egerton, hfinkel, kkwli0, caomhin, cfe-commits
Tags: #clang
Differential Revision: https://reviews.llvm.org/D70245
The file was modifiedclang/include/clang/Basic/OpenMPKinds.def
The file was modifiedclang/include/clang/Basic/Attr.td
The file was modifiedclang/lib/Sema/SemaTemplateInstantiateDecl.cpp
The file was modifiedclang/include/clang/Basic/DiagnosticParseKinds.td
The file was modifiedclang/test/OpenMP/declare_variant_messages.c
The file was modifiedclang/test/OpenMP/declare_variant_ast_print.cpp
The file was addedclang/test/OpenMP/declare_variant_device_kind_codegen.cpp
The file was addedclang/test/OpenMP/nvptx_declare_variant_device_kind_codegen.cpp
The file was modifiedclang/lib/Sema/SemaOpenMP.cpp
The file was addedclang/test/OpenMP/declare_variant_mixed_codegen.cpp
The file was modifiedclang/test/OpenMP/declare_variant_messages.cpp
The file was modifiedclang/lib/CodeGen/CGOpenMPRuntime.cpp
The file was modifiedclang/test/OpenMP/declare_variant_ast_print.c
The file was modifiedclang/lib/Parse/ParseOpenMP.cpp
Commit d9426c3360895f265a19e25e2d2bae3348ad9ce8 by listmail
[Tests] Autogenerate a bunch of SCEV trip count tests for readability. 
Will likely merge some of these files soon.
The file was modifiedllvm/test/Analysis/ScalarEvolution/trip-count9.ll
The file was modifiedllvm/test/Analysis/ScalarEvolution/trip-count3.ll
The file was modifiedllvm/test/Analysis/ScalarEvolution/trip-count2.ll
The file was modifiedllvm/test/Analysis/ScalarEvolution/trip-count8.ll
The file was modifiedllvm/test/Analysis/ScalarEvolution/trip-count6.ll
The file was modifiedllvm/test/Analysis/ScalarEvolution/trip-count10.ll
The file was modifiedllvm/test/Analysis/ScalarEvolution/trip-count.ll
The file was modifiedllvm/test/Analysis/ScalarEvolution/trip-count4.ll
The file was modifiedllvm/test/Analysis/ScalarEvolution/trip-count7.ll
Commit aaea24802bf5de0420f1ef5f3660a9765e23dea8 by listmail
Broaden the definition of a "widenable branch"
As a reminder, a "widenable branch" is the pattern "br i1 (and i1 X,
WC()), label %taken, label %untaken" where "WC" is the widenable
condition intrinsics. The semantics of such a branch (derived from the
semantics of WC) is that a new condition can be added into the condition
arbitrarily without violating legality.
Broaden the definition in two ways:
   Allow swapped operands to the br (and X, WC()) form
   Allow widenable branch w/trivial condition (i.e. true) which takes
form of br i1 WC()
The former is just general robustness (e.g. for X = non-instruction this
is what instcombine produces). The later is specifically important as
partial unswitching of a widenable range check produces exactly this
form above the loop.
Differential Revision: https://reviews.llvm.org/D70502
The file was modifiedllvm/lib/Transforms/Utils/GuardUtils.cpp
The file was modifiedllvm/test/Transforms/GuardWidening/basic_widenable_condition_guards.ll
The file was modifiedllvm/test/Transforms/LoopPredication/predicate-exits.ll
The file was modifiedllvm/test/Transforms/LoopPredication/basic_widenable_branch_guards.ll
The file was modifiedllvm/lib/Analysis/GuardUtils.cpp
The file was modifiedllvm/test/Transforms/SimplifyCFG/wc-widen-block.ll
The file was modifiedllvm/lib/Transforms/Scalar/GuardWidening.cpp
Commit ab411801b82783eb7f652701ccfce81b16cf1811 by tstellar
[cmake] Explicitly mark libraries defined in lib/ as "Component
Libraries"
Summary: Most libraries are defined in the lib/ directory but there are
also a few libraries defined in tools/ e.g. libLLVM, libLTO.  I'm
defining
"Component Libraries" as libraries defined in lib/ that may be included
in libLLVM.so.  Explicitly marking the libraries in lib/ as component
libraries allows us to remove some fragile checks that attempt to
differentiate between lib/ libraries and tools/ libraires:
1. In tools/llvm-shlib, because
llvm_map_components_to_libnames(LIB_NAMES "all") returned a list of all
libraries defined in the whole project, there was custom code needed to
filter out libraries defined in tools/, none of which should be included
in libLLVM.so.  This code assumed that any library defined as static was
from lib/ and everything else should be excluded.
With this change, llvm_map_components_to_libnames(LIB_NAMES, "all") only
returns libraries that have been added to the LLVM_COMPONENT_LIBS global
cmake property, so this custom filtering logic can be removed. Doing
this also fixes the build with BUILD_SHARED_LIBS=ON and
LLVM_BUILD_LLVM_DYLIB=ON.
2. There was some code in llvm_add_library that assumed that libraries
defined in lib/ would not have LLVM_LINK_COMPONENTS or
ARG_LINK_COMPONENTS set.  This is only true because libraries defined
lib lib/ use LLVMBuild.txt and don't set these values. This code has
been fixed now to check if the library has been explicitly marked as a
component library, which should now make it easier to remove LLVMBuild
at some point in the future.
I have tested this patch on Windows, MacOS and Linux with release builds
and the following combinations of CMake options:
- "" (No options)
- -DLLVM_BUILD_LLVM_DYLIB=ON
- -DLLVM_LINK_LLVM_DYLIB=ON
- -DBUILD_SHARED_LIBS=ON
- -DBUILD_SHARED_LIBS=ON -DLLVM_BUILD_LLVM_DYLIB=ON
- -DBUILD_SHARED_LIBS=ON -DLLVM_LINK_LLVM_DYLIB=ON
Reviewers: beanz, smeenai, compnerd, phosek
Reviewed By: beanz
Subscribers: wuzish, jholewinski, arsenm, dschuff, jyknight, dylanmckay,
sdardis, nemanjai, jvesely, nhaehnle, mgorny, mehdi_amini, sbc100,
jgravelle-google, hiraditya, aheejin, fedor.sergeev, asb, rbar,
johnrusso, simoncook, apazos, sabuasal, niosHD, jrtc27, MaskRay, zzheng,
edward-jones, atanasyan, steven_wu, rogfer01, MartinMosbeck, brucehoult,
the_o, dexonsmith, PkmX, jocewei, jsji, dang, Jim, lenary, s.egerton,
pzheng, sameer.abuasal, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D70179
The file was modifiedllvm/lib/Analysis/CMakeLists.txt
The file was modifiedllvm/lib/Target/PowerPC/AsmParser/CMakeLists.txt
The file was modifiedllvm/lib/WindowsManifest/CMakeLists.txt
The file was modifiedllvm/lib/Target/ARM/AsmParser/CMakeLists.txt
The file was modifiedllvm/lib/ExecutionEngine/JITLink/CMakeLists.txt
The file was modifiedllvm/lib/Transforms/Vectorize/CMakeLists.txt
The file was modifiedllvm/lib/Target/AVR/Disassembler/CMakeLists.txt
The file was modifiedllvm/lib/Target/AMDGPU/Disassembler/CMakeLists.txt
The file was modifiedllvm/lib/Target/ARM/Utils/CMakeLists.txt
The file was modifiedllvm/lib/Option/CMakeLists.txt
The file was modifiedllvm/lib/Target/Hexagon/TargetInfo/CMakeLists.txt
The file was modifiedllvm/lib/BinaryFormat/CMakeLists.txt
The file was modifiedllvm/lib/CodeGen/AsmPrinter/CMakeLists.txt
The file was modifiedllvm/lib/MC/MCDisassembler/CMakeLists.txt
The file was modifiedllvm/lib/Target/Hexagon/MCTargetDesc/CMakeLists.txt
The file was modifiedllvm/lib/ExecutionEngine/IntelJITEvents/CMakeLists.txt
The file was modifiedllvm/lib/LTO/CMakeLists.txt
The file was modifiedllvm/lib/ExecutionEngine/OProfileJIT/CMakeLists.txt
The file was modifiedllvm/lib/Passes/CMakeLists.txt
The file was modifiedllvm/lib/Target/AMDGPU/MCTargetDesc/CMakeLists.txt
The file was modifiedllvm/lib/ProfileData/Coverage/CMakeLists.txt
The file was modifiedllvm/lib/CodeGen/SelectionDAG/CMakeLists.txt
The file was modifiedllvm/lib/MC/MCParser/CMakeLists.txt
The file was modifiedllvm/lib/Target/SystemZ/MCTargetDesc/CMakeLists.txt
The file was modifiedllvm/lib/Target/RISCV/Disassembler/CMakeLists.txt
The file was modifiedllvm/lib/TextAPI/CMakeLists.txt
The file was modifiedllvm/lib/ExecutionEngine/RuntimeDyld/CMakeLists.txt
The file was modifiedllvm/lib/Transforms/Scalar/CMakeLists.txt
The file was modifiedllvm/lib/DebugInfo/GSYM/CMakeLists.txt
The file was modifiedllvm/lib/Remarks/CMakeLists.txt
The file was modifiedllvm/lib/ExecutionEngine/CMakeLists.txt
The file was modifiedllvm/lib/Target/X86/TargetInfo/CMakeLists.txt
The file was modifiedllvm/lib/Transforms/InstCombine/CMakeLists.txt
The file was modifiedllvm/lib/XRay/CMakeLists.txt
The file was modifiedllvm/lib/DebugInfo/CodeView/CMakeLists.txt
The file was modifiedllvm/lib/DebugInfo/MSF/CMakeLists.txt
The file was modifiedllvm/lib/Target/CMakeLists.txt
The file was modifiedllvm/lib/Target/XCore/Disassembler/CMakeLists.txt
The file was modifiedllvm/lib/Target/BPF/Disassembler/CMakeLists.txt
The file was modifiedllvm/lib/AsmParser/CMakeLists.txt
The file was modifiedllvm/lib/Target/XCore/MCTargetDesc/CMakeLists.txt
The file was modifiedllvm/lib/Transforms/ObjCARC/CMakeLists.txt
The file was modifiedllvm/lib/Target/RISCV/TargetInfo/CMakeLists.txt
The file was modifiedllvm/lib/Target/ARM/TargetInfo/CMakeLists.txt
The file was modifiedllvm/lib/Target/ARC/TargetInfo/CMakeLists.txt
The file was modifiedllvm/lib/Target/Mips/TargetInfo/CMakeLists.txt
The file was modifiedllvm/lib/Target/PowerPC/TargetInfo/CMakeLists.txt
The file was modifiedllvm/lib/Target/AMDGPU/Utils/CMakeLists.txt
The file was modifiedllvm/lib/MCA/CMakeLists.txt
The file was modifiedllvm/lib/ExecutionEngine/Orc/CMakeLists.txt
The file was modifiedllvm/lib/Target/AMDGPU/AsmParser/CMakeLists.txt
The file was modifiedllvm/lib/DebugInfo/Symbolize/CMakeLists.txt
The file was modifiedllvm/lib/Target/X86/MCTargetDesc/CMakeLists.txt
The file was modifiedllvm/lib/ToolDrivers/llvm-lib/CMakeLists.txt
The file was modifiedllvm/lib/Target/AArch64/AsmParser/CMakeLists.txt
The file was modifiedllvm/lib/Target/Lanai/TargetInfo/CMakeLists.txt
The file was modifiedllvm/lib/Linker/CMakeLists.txt
The file was modifiedllvm/lib/CodeGen/GlobalISel/CMakeLists.txt
The file was modifiedllvm/lib/Target/MSP430/AsmParser/CMakeLists.txt
The file was modifiedllvm/lib/Target/WebAssembly/AsmParser/CMakeLists.txt
The file was modifiedllvm/lib/Bitcode/Writer/CMakeLists.txt
The file was modifiedllvm/lib/Target/X86/Utils/CMakeLists.txt
The file was modifiedllvm/tools/llvm-shlib/CMakeLists.txt
The file was modifiedllvm/lib/Target/MSP430/Disassembler/CMakeLists.txt
The file was modifiedllvm/lib/Target/RISCV/AsmParser/CMakeLists.txt
The file was modifiedllvm/lib/Demangle/CMakeLists.txt
The file was modifiedllvm/lib/Target/PowerPC/MCTargetDesc/CMakeLists.txt
The file was modifiedllvm/lib/Bitcode/Reader/CMakeLists.txt
The file was modifiedllvm/lib/DebugInfo/PDB/CMakeLists.txt
The file was modifiedllvm/lib/Target/AArch64/Disassembler/CMakeLists.txt
The file was modifiedllvm/cmake/modules/AddLLVM.cmake
The file was modifiedllvm/lib/TableGen/CMakeLists.txt
The file was modifiedllvm/lib/Target/AVR/TargetInfo/CMakeLists.txt
The file was modifiedllvm/lib/ProfileData/CMakeLists.txt
The file was modifiedllvm/lib/IR/CMakeLists.txt
The file was modifiedllvm/lib/Transforms/Instrumentation/CMakeLists.txt
The file was modifiedllvm/lib/Target/MSP430/TargetInfo/CMakeLists.txt
The file was modifiedllvm/lib/Target/BPF/TargetInfo/CMakeLists.txt
The file was modifiedllvm/lib/Target/Sparc/AsmParser/CMakeLists.txt
The file was modifiedllvm/lib/ToolDrivers/llvm-dlltool/CMakeLists.txt
The file was modifiedllvm/lib/Target/NVPTX/MCTargetDesc/CMakeLists.txt
The file was modifiedllvm/lib/Target/Sparc/Disassembler/CMakeLists.txt
The file was modifiedllvm/lib/CodeGen/CMakeLists.txt
The file was modifiedllvm/lib/Target/Lanai/MCTargetDesc/CMakeLists.txt
The file was modifiedllvm/cmake/modules/LLVM-Config.cmake
The file was modifiedllvm/lib/Transforms/Coroutines/CMakeLists.txt
The file was modifiedllvm/lib/Target/X86/Disassembler/CMakeLists.txt
The file was modifiedllvm/lib/Target/SystemZ/Disassembler/CMakeLists.txt
The file was modifiedllvm/lib/Transforms/Utils/CMakeLists.txt
The file was modifiedllvm/lib/Target/Lanai/Disassembler/CMakeLists.txt
The file was modifiedllvm/lib/Object/CMakeLists.txt
The file was modifiedllvm/lib/Target/SystemZ/AsmParser/CMakeLists.txt
The file was modifiedllvm/lib/Target/SystemZ/TargetInfo/CMakeLists.txt
The file was modifiedllvm/lib/Target/ARM/MCTargetDesc/CMakeLists.txt
The file was modifiedllvm/lib/Transforms/CFGuard/CMakeLists.txt
The file was modifiedllvm/lib/Target/AArch64/Utils/CMakeLists.txt
The file was modifiedllvm/lib/Target/WebAssembly/MCTargetDesc/CMakeLists.txt
The file was modifiedllvm/lib/CodeGen/MIRParser/CMakeLists.txt
The file was modifiedllvm/lib/IRReader/CMakeLists.txt
The file was modifiedllvm/lib/ExecutionEngine/PerfJITEvents/CMakeLists.txt
The file was modifiedllvm/lib/Target/WebAssembly/TargetInfo/CMakeLists.txt
The file was modifiedllvm/lib/Target/AMDGPU/TargetInfo/CMakeLists.txt
The file was modifiedllvm/lib/Target/ARC/Disassembler/CMakeLists.txt
The file was modifiedllvm/lib/Target/Hexagon/Disassembler/CMakeLists.txt
The file was modifiedllvm/lib/Target/Sparc/MCTargetDesc/CMakeLists.txt
The file was modifiedllvm/lib/Target/WebAssembly/Disassembler/CMakeLists.txt
The file was modifiedllvm/lib/Target/ARM/Disassembler/CMakeLists.txt
The file was modifiedllvm/lib/Bitstream/Reader/CMakeLists.txt
The file was modifiedllvm/lib/Target/X86/AsmParser/CMakeLists.txt
The file was modifiedllvm/lib/Target/AArch64/TargetInfo/CMakeLists.txt
The file was modifiedllvm/lib/Target/Hexagon/AsmParser/CMakeLists.txt
The file was modifiedllvm/lib/Transforms/IPO/CMakeLists.txt
The file was modifiedllvm/lib/Target/AVR/AsmParser/CMakeLists.txt
The file was modifiedllvm/lib/Target/Lanai/AsmParser/CMakeLists.txt
The file was modifiedllvm/lib/DebugInfo/DWARF/CMakeLists.txt
The file was modifiedllvm/lib/LineEditor/CMakeLists.txt
The file was modifiedllvm/lib/ExecutionEngine/OrcError/CMakeLists.txt
The file was modifiedllvm/lib/Target/Mips/MCTargetDesc/CMakeLists.txt
The file was modifiedllvm/lib/ExecutionEngine/Interpreter/CMakeLists.txt
The file was modifiedllvm/lib/Target/MSP430/MCTargetDesc/CMakeLists.txt
The file was modifiedllvm/lib/ObjectYAML/CMakeLists.txt
The file was modifiedllvm/lib/Target/RISCV/MCTargetDesc/CMakeLists.txt
The file was modifiedllvm/lib/Target/Mips/Disassembler/CMakeLists.txt
The file was modifiedllvm/lib/Target/BPF/AsmParser/CMakeLists.txt
The file was modifiedllvm/lib/Target/Sparc/TargetInfo/CMakeLists.txt
The file was modifiedllvm/lib/Transforms/AggressiveInstCombine/CMakeLists.txt
The file was modifiedllvm/lib/Target/NVPTX/TargetInfo/CMakeLists.txt
The file was modifiedllvm/lib/Target/ARC/MCTargetDesc/CMakeLists.txt
The file was modifiedllvm/lib/Target/BPF/MCTargetDesc/CMakeLists.txt
The file was modifiedllvm/lib/Target/PowerPC/Disassembler/CMakeLists.txt
The file was modifiedllvm/lib/Target/XCore/TargetInfo/CMakeLists.txt
The file was modifiedllvm/lib/Target/AArch64/MCTargetDesc/CMakeLists.txt
The file was modifiedllvm/lib/Target/Mips/AsmParser/CMakeLists.txt
The file was modifiedllvm/lib/Target/RISCV/Utils/CMakeLists.txt
The file was modifiedllvm/lib/Target/AVR/MCTargetDesc/CMakeLists.txt
The file was modifiedllvm/lib/ExecutionEngine/MCJIT/CMakeLists.txt
The file was modifiedllvm/lib/Support/CMakeLists.txt
The file was modifiedllvm/lib/FuzzMutate/CMakeLists.txt
The file was modifiedllvm/lib/MC/CMakeLists.txt
Commit e0cabe280b80ab71045d90b2d6f1a70e5d4c5d05 by Adrian Prantl
Debug info: Emit objc_direct methods as members of their containing
class
even in DWARF 4 and earlier. This allows the debugger to recognize them
as direct functions as opposed to Objective-C methods.
<rdar://problem/57327663>
Differential Revision: https://reviews.llvm.org/D70544
The file was modifiedclang/lib/CodeGen/CGDebugInfo.h
The file was addedclang/test/CodeGenObjC/debug-info-direct-method.m
The file was modifiedclang/lib/CodeGen/CGDebugInfo.cpp
Commit f5759d5dbc441f1fe956757408f46e65611b94e5 by Jonas Devlieghere
[Test] Split up TestIntegerTypes.py
The unsplit test is timing out on GreenDragon's sanitized bot. By
splitting the test we avoid this issue and increase parallelism.
The file was addedlldb/packages/Python/lldbsuite/test/types/TestShortType.py
The file was addedlldb/packages/Python/lldbsuite/test/types/TestShortTypeExpr.py
The file was addedlldb/packages/Python/lldbsuite/test/types/TestCharTypeExpr.py
The file was removedlldb/packages/Python/lldbsuite/test/types/TestIntegerTypes.py
The file was addedlldb/packages/Python/lldbsuite/test/types/TestLongTypes.py
The file was addedlldb/packages/Python/lldbsuite/test/types/TestIntegerType.py
The file was addedlldb/packages/Python/lldbsuite/test/types/TestLongTypesExpr.py
The file was addedlldb/packages/Python/lldbsuite/test/types/TestIntegerTypeExpr.py
The file was removedlldb/packages/Python/lldbsuite/test/types/TestIntegerTypesExpr.py
The file was addedlldb/packages/Python/lldbsuite/test/types/TestCharType.py
Commit 5fcf89f77893b4c3367f23dd82b426f783e67cff by stefanp
[PowerPC] Add new Future CPU for PowerPC
This patch will add -mcpu=future into clang for PowerPC.
A CPU type is required for work that may possibly be enabled for some
future Power CPU. The CPU type future will serve that purpose. This
patch introduces no new functionality. It is an incremental patch on top
of which Power PC work for some future CPU can be done.
Differential Revision: https://reviews.llvm.org/D70262
The file was modifiedclang/lib/Driver/ToolChains/Arch/PPC.cpp
The file was modifiedclang/lib/Basic/Targets/PPC.h
The file was modifiedclang/test/Preprocessor/init.c
The file was modifiedclang/test/Misc/target-invalid-cpu-note.c
The file was modifiedclang/lib/Basic/Targets/PPC.cpp
Commit fea8288c174c63cd174e841a9c1cbd9e9bc74427 by craig.topper
[X86] Add test case for f128 fma. NFC
This should be turned into a libcall to fmal. We already do it
correctly, but we had no test to confirm.
The file was modifiedllvm/test/CodeGen/X86/fp128-libcalls.ll
Commit 1439059cc76a51954b6eba9b657a23ff662dfbf8 by craig.topper
[X86] Change legalization action for f128 fadd/fsub/fmul/fdiv from
Custom to LibCall.
The custom code just emits a libcall, but we can do the same with
generic code. The only difference is that the generic code can form tail
calls where the custom code couldn't. This is responsible for the test
changes.
This avoids needing to modify the Custom handling for strict fp.
The file was modifiedllvm/test/CodeGen/X86/soft-fp.ll
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.cpp
The file was modifiedllvm/test/CodeGen/X86/fp128-g.ll
The file was modifiedllvm/test/CodeGen/X86/fp128-i128.ll
The file was modifiedllvm/test/CodeGen/X86/fp128-extract.ll
Commit 4f5d931c5813a5f89250b427b2d3e8c63e03a0c6 by kazu
[JumpThreading] Refactor ThreadEdge
Summary: This patch moves various checks from ThreadEdge to new function
TryThreadEdge The rational behind this is that I'd like to use
ThreadEdge without its checks in my upcoming patch.
This patch preserves lightweight checks as assertions in ThreadEdge.
ThreadEdge does not repeat the cost check, however.
Reviewers: wmi
Subscribers: hiraditya, jfb, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D70338
The file was modifiedllvm/include/llvm/Transforms/Scalar/JumpThreading.h
The file was modifiedllvm/lib/Transforms/Scalar/JumpThreading.cpp
Commit 44fe1f024d542bb7d286f9dd03ef35ad474399bd by Jonas Devlieghere
[test] Mark TestEditline as skipped with ASan.
As discussed in https://reviews.llvm.org/D70324.
The file was modifiedlldb/packages/Python/lldbsuite/test/terminal/TestEditline.py
Commit b26d9e417d2d4dbb47f6e967926dbb31f6d7a4b4 by Jonas Devlieghere
[Reproducer] Instruct users to replay reproducer
Improve the message printed when LLDB crashes by asking the user to
replay the reproducer before attaching it to a bugreport..
******************** Crash reproducer for lldb version 10.0.0
(git@github.com:llvm/llvm-project.git revision ...)
clang revision ...
llvm revision ...
Reproducer written to '/path/to/reproducer'
Before attaching the reproducer to a bug report:
- Look at the directory to ensure you're willing to share its content.
- Make sure the reproducer works by replaying the reproducer.
Replay the reproducer with the following command:
./bin/lldb -replay /path/to/reproducer
********************
The file was modifiedlldb/tools/driver/Driver.cpp
Commit bb090bb1cad28cef1ad74c8ca986f3f5643eb6d9 by Jonas Devlieghere
[Reproducer] Make 'reproducer xcrash' behave the same during capture &
replay
There's no point in preventing this command from running during replay.
We should simulate the same crash as during capture.
The file was modifiedlldb/source/Commands/CommandObjectReproducer.cpp
Commit 6c2e4e88010827034250fcec0840c84dca4cc354 by Jonas Devlieghere
[Driver] Fix newline at the end of help output
Print a regular newline at the end of the help output. The current
string literal seems to throw off shells.
The file was modifiedlldb/tools/driver/Driver.cpp
Commit f8ff3d7ebd8499cad896b2e934fbc9d7412ba823 by a.bataev
[OPENMP]Remove unused template parameter, NFC.
The file was modifiedclang/lib/CodeGen/CGOpenMPRuntime.cpp
The file was modifiedclang/include/clang/Basic/OpenMPKinds.h
The file was modifiedclang/include/clang/Sema/Sema.h
Commit 844d97f650a2d716e63e3be903c32a82f2f817b1 by Vedant Kumar
Clang-trunk Generates Wrong Debug values with -O1
Bit-Tracking Dead Code Elimination (bdce) do not mark dbg.value as undef
after deleting instruction.  which shows invalid state of variable in
debugger.  This patches fixes this by marking the dbg.value as undef
which depends on dead instruction.
This fixes https://bugs.llvm.org/show_bug.cgi?id=41925
Patch by kamlesh kumar!
Differential Revision: https://reviews.llvm.org/D70040
The file was modifiedllvm/lib/Transforms/Scalar/BDCE.cpp
The file was addedllvm/test/Transforms/BDCE/pr41925.ll
Commit 52e377497ddc3aa7178d4fd4c0cda096df4d8a72 by yamauchi
[PGO][PGSO] DAG.shouldOptForSize part.
Summary:
(Split of off D67120)
SelectionDAG::shouldOptForSize changes for profile guided size
optimization.
Reviewers: davidxl
Subscribers: hiraditya, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D70095
The file was modifiedllvm/include/llvm/CodeGen/SelectionDAG.h
The file was modifiedllvm/utils/TableGen/GlobalISelEmitter.cpp
The file was modifiedllvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.cpp
The file was modifiedllvm/unittests/CodeGen/AArch64SelectionDAGTest.cpp
The file was modifiedllvm/include/llvm/CodeGen/FastISel.h
The file was modifiedllvm/lib/Target/AArch64/AArch64InstrInfo.td
The file was modifiedllvm/lib/Target/X86/X86InstrInfo.td
The file was modifiedllvm/lib/Target/AArch64/AArch64ISelDAGToDAG.cpp
The file was modifiedllvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
The file was modifiedllvm/include/llvm/CodeGen/SelectionDAGISel.h
The file was modifiedllvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
The file was modifiedllvm/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp
The file was modifiedllvm/lib/Target/X86/X86ISelDAGToDAG.cpp
Commit b8b57087d3a6954204c6c968fb3de1dc67a87c59 by luismarques
[Object][RISCV] Fix R_RISCV_SET6 and R_RISCV_SUB6 relocations resolution
Summary: These relocations had a suspicious resolution logic, given
their name. This patch makes the resolution match the LLD one, which
makes more sense.
Reviewers: asb, lenary, HsiangKai, jrtc27 Reviewed By: HsiangKai Tags:
#llvm Differential Revision: https://reviews.llvm.org/D70396
The file was modifiedllvm/lib/Object/RelocationResolver.cpp
Commit f471eb8e99b564265a4bea326922263ff06cda40 by jdenny.ornl
[FileCheck] Make FILECHECK_OPTS useful for its test suite
Without this patch, `FILECHECK_OPTS` isn't propagated to FileCheck's
test suite so that `FILECHECK_OPTS` doesn't inadvertently affect test
results by affecting the output of FileCheck calls under test.  As a
result, `FILECHECK_OPTS` is useless for debugging FileCheck's test
suite.
In `llvm/test/FileCheck/lit.local.cfg`, this patch provides a new
subsitution, `%ProtectFileCheckOutput`, to address this problem for both
`FILECHECK_OPTS` and the deprecated
`FILECHECK_DUMP_INPUT_ON_FAILURE`.  The rest of the patch uses
`%ProtectFileCheckOutput` throughout the test suite
Fixes PR40284.
Reviewed By: probinson, thopre
Differential Revision: https://reviews.llvm.org/D65121
The file was modifiedllvm/test/FileCheck/check-label-dag.txt
The file was modifiedllvm/test/FileCheck/check-not-diaginfo.txt
The file was modifiedllvm/test/FileCheck/implicit-check-not.txt
The file was modifiedllvm/test/FileCheck/dump-input-annotations.txt
The file was modifiedllvm/test/FileCheck/match-full-lines.txt
The file was modifiedllvm/test/FileCheck/lit.local.cfg
The file was modifiedllvm/test/FileCheck/check-empty-tag.txt
The file was modifiedllvm/test/FileCheck/check-count.txt
The file was modifiedllvm/test/FileCheck/line-count.txt
The file was modifiedllvm/test/FileCheck/check-prefixes.txt
The file was modifiedllvm/test/FileCheck/var-scope.txt
The file was modifiedllvm/test/FileCheck/check-label.txt
The file was modifiedllvm/test/FileCheck/check-multiple-prefixes-nomatch.txt
The file was modifiedllvm/test/FileCheck/envvar-opts.txt
The file was modifiedllvm/test/FileCheck/verbose.txt
The file was modifiedllvm/test/FileCheck/no-multi-suffixes.txt
The file was modifiedllvm/test/FileCheck/check-multiple-prefixes-nomatch-2.txt
The file was modifiedllvm/test/FileCheck/dump-input-enable.txt
The file was modifiedllvm/docs/TestingGuide.rst
The file was modifiedllvm/test/FileCheck/numeric-defines.txt
The file was modifiedllvm/test/FileCheck/string-defines-diagnostics.txt
The file was modifiedllvm/test/FileCheck/no-check-file.txt
The file was modifiedllvm/test/FileCheck/numeric-defines-diagnostics.txt
The file was modifiedllvm/test/FileCheck/validate-check-prefix.txt
The file was modifiedllvm/test/FileCheck/check-empty.txt
The file was modifiedllvm/test/FileCheck/numeric-expression.txt
The file was modifiedllvm/test/FileCheck/multiple-missing-prefixes.txt
The file was modifiedllvm/test/FileCheck/check-ignore-case.txt
The file was modifiedllvm/test/FileCheck/opt-color.txt
The file was modifiedllvm/test/FileCheck/string-defines.txt
Commit 8293f7434577e23a07284686f5b54079e22e6a91 by listmail
Further cleanup manipulation of widenable branches [NFC]
This is a follow on to aaea24802bf5.  In post commit discussion, Artur
and I realized we could cleanup the code using Uses; this patch does so.
The file was modifiedllvm/lib/Analysis/GuardUtils.cpp
The file was modifiedllvm/lib/Transforms/Utils/GuardUtils.cpp
The file was modifiedllvm/include/llvm/Analysis/GuardUtils.h
Commit 0163329dbd6c687453a27f72e21512a8c151c5b3 by julian.lettner
[TSan] Make `mach_vm_allocate.c` test less flaky
rdar://57365733
The file was modifiedcompiler-rt/test/tsan/Darwin/mach_vm_allocate.c
Commit 16d9f44fd154b409b1c7f0876ba7c767b60cb3da by mvanotti
[libFuzzer] Fix fd check in DupAndCloseStderr.
Summary: This commit fixes the check in the return value from the
`DuplicateFile` function, which returns a new file descriptor.
`DuplicateFile` can return 0 if that file descriptor is available (for
example, if stdin has already been closed).
In particular, this could cause a bug with the `-close_fd_mask` flag in
some platforms: just call the fuzzer with stdin closed and the
`-close_fd_mask=2` flag, and stderr will not be muted.
Example fuzzer:
```
extern "C" int LLVMFuzzerTestOneInput(const uint8_t* Data, size_t Size)
{
fprintf(stderr, "STDERR\n");
fprintf(stdout, "STDOUT\n");
return 0;
}
```
Invocation (muting both stderr and stdout):
```
./test -close_fd_mask=3 -runs=1 0<&- INFO: Seed: 1155116940 INFO: Loaded
1 modules   (1 inline 8-bit counters): 1 [0x48b020, 0x48b021), INFO:
Loaded 1 PC tables (1 PCs): 1 [0x478dc8,0x478dd8), INFO: -max_len is not
provided; libFuzzer will not generate inputs larger than 4096 bytes
STDERR INFO: A corpus is not provided, starting from an empty corpus
STDERR Done 2 runs in 0 second(s)
```
Reviewers: mcgrathr, jakehehrlich, phosek, kcc, aarongreen
Subscribers: #sanitizers, llvm-commits
Tags: #sanitizers, #llvm
Differential Revision: https://reviews.llvm.org/D68775
The file was modifiedcompiler-rt/lib/fuzzer/FuzzerIO.cpp
Commit 75434366cec161ee532ee0ec3dcb5ebeb588d9df by david.tellenbach
[AArch64] [FrameLowering] Allow conditional insertion of CFI instruction
Summary: The insertion of most CFI instructions during AArch64 frame
lowering can be disabled (e.g. using the function attribute `nounwind`).
This patch enables conditional insertion for one more CFI instruction.
Reviewers: t.p.northover, ostannard
Reviewed By: ostannard
Subscribers: kristof.beyls, hiraditya, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D70129
The file was addedllvm/test/CodeGen/AArch64/no_cfi.ll
The file was modifiedllvm/lib/Target/AArch64/AArch64FrameLowering.cpp
The file was modifiedllvm/test/CodeGen/AArch64/arm64-blockaddress.ll
Commit 7bf721e59c54aba854ab81cc6fc92db30446cfda by luismarques
[Object][RISCV] Resolve R_RISCV_32_PCREL
Summary: Add support for resolving `R_RISCV_32_PCREL` relocations. Those
aren't actually resolved AFAIK, but support is still needed to avoid
llvm-dwarfdump errors. The use of these relocations was introduced in
D66419 but the corresponding resolving wasn't added then. The test adds
a check that should catch future unresolved relocations.
Reviewers: asb, lenary Reviewed By: asb Tags: #llvm Differential
Revision: https://reviews.llvm.org/D70204
The file was modifiedllvm/lib/Object/RelocationResolver.cpp
The file was modifiedllvm/test/DebugInfo/RISCV/relax-debug-frame.ll
Commit bc8e88e974550dc7a8000d526df6dadb12b54bc0 by Adrian Prantl
Early-exitify ClangASTContext::AddObjCClassProperty() (NFC)
The file was modifiedlldb/source/Symbol/ClangASTContext.cpp
Commit dfb7a9091affce6e5a8fdb017b4e2d58675bb9b0 by listmail
[LoopPred] Robustly handle partially unswitched loops
We may end up with a case where we have a widenable branch above the
loop, but not all widenable branches within the loop have been removed.
Since a widenable branch inhibit SCEVs ability to reason about exit
counts (by design), we have a tradeoff between effectiveness of this
optimization and allowing future widening of the branches within the
loop.  LoopPred is thought to be one of the