FailedChanges

Summary

  1. [AMDGPU] removed unused functions from printf lowering (details)
  2. Do not call replaceAllUsesWith to upgrade calls to ARC runtime functions (details)
  3. [X86] Remove 'Server' from Tigerlake description comments. (details)
  4. Move findBBwithCalls to the file it's used in to avoid unused function (details)
  5. Revert "Do not call replaceAllUsesWith to upgrade calls to ARC runtime (details)
  6. [Symbol] Remove redundant include (details)
  7. clang-scan-deps: do not spawn threads when LLVM_ENABLE_THREADS is (details)
  8. [TSan] Fix test failing on Linux (details)
  9. Eliminate implicit Register->unsigned conversions in VirtRegMap. NFC (details)
  10. [lld] Remove unnecessary "class Lazy" (details)
  11. [AMDGPU] Fix msan failure in printf lowering (details)
  12. Do not call replaceAllUsesWith to upgrade calls to ARC runtime functions (details)
  13. Verifier: check prof branch_weights (details)
  14. [GlobalISel]: Add KnownBits for G_XOR (details)
  15. [ELF][test] Add dynamic-list-preempt2.s (details)
  16. Added unit tests to check supported rounding modes (details)
  17. [ELF] Rename odd variable names "New" after r365730. NFC (details)
  18. [GlobalISel] Make the InstructionSelector instance non-const, allowing (details)
  19. [AArch64][GlobalISel] Replace explicit vreg creation with implicit using (details)
  20. [PowerPC] Fix ICE when truncating some vectors (details)
  21. [ASTImporter] Import additional flags for functions. (details)
  22. [NFC][InstCombine] Non-canonical clamp pattern: non-canonical predicate (details)
  23. [SimplifyLibCalls] Add dereferenceable bytes from known callsites (details)
  24. [NFC] Updated tests after r368657 (details)
  25. [ELF] Simplify handling of exportDynamic and isPreemptible (details)
  26. Revert r368276 "[TargetLowering] SimplifyDemandedBits - call (details)
  27. [ELF] Don't special case symbolic relocations with 0 addend to ifunc in (details)
  28. [X86] SimplifyDemandedVectorElts - attempt to recombine target shuffle (details)
  29. [X86] XFormVExtractWithShuffleIntoLoad - handle shuffle mask scaling (details)
  30. [libc++] Use [[nodiscard]] for lock_guard, as an extension (details)
  31. gn build: Make sync script group output by revision (details)
  32. [libc++] Fix incorrect UNSUPPORTED annotation (details)
  33. gn build: Give cmake sync script an opt-in --write flag (details)
  34. gn build: Merge r368630 (details)
  35. gn build: Extract git() and git_out() functions in sync script (details)
  36. [pstl] Rename PARALLELSTL_BACKEND to PSTL_PARALLEL_BACKEND (details)
  37. [CodeGen] Disable UBSan for coroutine functions (details)
  38. [llvm-readobj] - Remove 'error(Error EC)' helper. (details)
  39. [lldb][NFC] Add basic IOHandler completion test (details)
  40. [libTooling] In Transformer, generalize `applyFirst` to admit rules with (details)
  41. [pstl] Allow customizing whether per-TU insulation is provided (details)
  42. [InstCombine] foldXorOfICmps(): don't give up on non-single-use ICmp's (details)
  43. [InstCombine][NFC] Rename IsFreeToInvert() -> isFreeToInvert() for (details)
  44. [InstCombine] Non-canonical clamp-like pattern handling (details)
  45. [lldb] Reland "Refactor guard variable checks in IRForTarget" (details)
  46. [analyzer][NFC] Refactoring BugReporter.cpp P1.: Store interesting (details)
  47. [AIX][test/Index] Set/propagate AIXTHREAD_STK for AIX (details)
  48. [AIX] Implement LR prolog/epilog save/restore (details)
  49. Fix -Wdocumentation typo. NFCI. (details)
  50. Fix -Wdocumentation warning (@returns used in void function). NFCI. (details)
  51. [analyzer][NFC] Refactoring BugReporter.cpp P2.: Clean up the (details)
  52. [lldb] Fix Microsoft guard variable detection (details)
  53. [AArch64] Make the memtag sanitizer require the memtag extension (details)
  54. Enable memtag sanitizer in all AArch64 toolchains (details)
  55. [llvm-readelf] Implement note parsing for NT_FILE and unknown (details)
  56. Revert r368691; test checked in without changes by accident (details)
  57. [clang-tidy] Update `TransformerClangTidyCheck` to use new (details)
  58. [TargetLowering][NFC] prepareUREMEqFold(): fixup comment (details)
  59. [CodeGen][SelectionDAG] More efficient code for X % C == 0 (SREM case) (details)
  60. [libc++] Always build with -fvisibility=hidden (details)
  61. GlobalISel: Change representation of shuffle masks (details)
  62. GlobalISel: Add more verifier checks for G_SHUFFLE_VECTOR (details)
  63. Fix crash on switch conditions of non-integer types in templates (details)
  64. [ORC] Refactor definition-generation, add a generator for static (details)
  65. GlobalISel: Implement lower for G_SHUFFLE_VECTOR (details)
  66. [lld][test] Update test to print ELF note description data (details)
  67. [ARM] Fix encoding of APSR in CLRM instruction (details)
  68. [ARM] Fix detection of duplicates when parsing reg list operands (details)
  69. GlobalISel: Partially implement fewerElementsVector G_UNMERGE_VALUES (details)
  70. [SLC] Improve dereferenceable bytes annotation (details)
  71. [X86] Add some vXi8 extract subvector cost model tests (details)
  72. [analyzer][NFC] Refactoring BugReporter.cpp P3.: (details)
  73. [Dwarf] Complete the list of type tags. (details)
  74. [lld][WebAssembly] Allow linking of pic code into static binaries (details)
  75. [NFC][AIX] Use assert instead of llvm_unreachable (details)
  76. Reland r368691: "[AIX] Implement LR prolog/epilog save/restore" (details)
  77. [NFC] Revisited/updated tests (details)
  78. [ValueTracking] Improve reverse assumption inference (details)
  79. [SimplifyLibCalls] Add noalias from known callsites (details)
  80. [NFC] Updated tests after r368724 (details)
  81. [util] Allow callsigns when running git llvm revert (details)
  82. Use Register over unsigned in LateEHPrepare (NFC) (details)
  83. clang: Don't warn on unused momit-leaf-frame-pointer when frame pointers (details)
  84. [NFC] Fixed test (details)
  85. [AutoUpgrader] Make ArcRuntime Autoupgrader more conservative (details)
  86. [llvm-profdata] Profile dump for compact binary format (details)
  87. [clang] Refactor doc comments to Decls attribution (details)
  88. [ARM] Add MVE beats vector cost model (details)
  89. [NFC][clang] Adding argument based Phase list filtering to (details)
  90. [analyzer][NFC] Refactoring BugReporter.cpp P4.: If it can be const, (details)
  91. [AMDGPU] Fix to 'Fold readlane from copy of SGPR or imm' (details)
  92. [analyzer][NFC] Refactoring BugReporter.cpp P5.: Compact mile long (details)
  93. Revert "Fix crash on switch conditions of non-integer types in (details)
  94. Don't use std::errc (details)
  95. [ORC] Fix BuildingAJIT tutorial code broken by r368707. (details)
  96. [Symbol] Decouple clang from CompilerType (details)
  97. [DWARF} Use LLVM's debug line parser in LLDB. (details)
  98. [Refactor] Moving SourceExtraction header from lib to include (details)
  99.     [AIX]Lowering global address for 32/64bit small/large code models (details)
  100. [analyzer][NFC] Address inlines of D65484 (details)
  101. [DWARF] Guess the path style (details)
  102. [GISel] Pass MachineRegisterInfo by const reference to matcher. (details)
  103. Remove the extra `;`. (details)
  104. [libc++] Mark two <chrono> tests as unsupported on AppleClang 11 (details)
  105. [WebAssembly] Make clang emit correct va_arg code for structs (details)
  106. Factor architecture dependent code out of loop.cu (details)
  107. [analyzer][NFC] Refactoring BugReporter.cpp P6.: Completely get rid of (details)
  108. [GlobalISel]: Fix lowering of G_SHUFFLE_VECTOR with scalar sources (details)
  109. Add a missing header comment, NFC (details)
  110. [analyzer][NFC] Make sure that the BugReport is not modified during the (details)
  111. Relax opcode checks in test to check for only a number instead of a (details)
  112. [GlobalISel][NFC] Factor out common target code from (details)
  113. [NFCI] Explicitly provide user-defined constructor for SectionRef (details)
  114. Initial support for native debugging of x86/x64 Windows processes (details)
  115. Attempt to fix issue with unresolved lit test in TableGen (details)
  116. [clang] DirectoryWatcher for Windows stubs (to fix build break). (details)
  117. [clang][DirectoryWatcher] Fix Windows stub after LLVM change (details)
  118. [Polly-ACC] Fix test after IR-printer change. (details)
  119. [ORC] Fix SpeculativeJIT example code broken by r368707. (details)
  120. [analyzer] Disable the checker-plugins test on Darwin. (details)
  121. [analyzer] exploded-graph-rewriter: Open the converted graph (details)
  122. [analyzer] exploded-graph-rewriter: NFC: Refactor explorers into (details)
  123. [analyzer] exploded-graph-rewriter: Implement manual graph trimming. (details)
  124. [analyzer] exploded-graph-rewriter: Implement displaying Store pointers. (details)
  125. [AArch64] Remove incorrect usage of MONonTemporal. (details)
  126. [analyzer] Prune calls to functions with linear CFGs that return a (details)
  127. [DebugLine] Be more robust in geussing the path style (details)
  128. [analyzer] Track the right hand side of the last store regardless of its (details)
  129. Enable lldb-server on Windows (details)
  130. [AArch64][GlobalISel] RBS: Treat s128s like vectors when unmerging. (details)
  131. Update Python tests for lldb-server on Windows (details)
  132. [analyzer][NFC] Prepare visitors for different tracking kinds (details)
  133. [ORC] Fix clang-interpreter example code broken by r368707. (details)
  134. [analyzer] Don't delete TaintConfig copy constructor (details)
  135. [GlobalISel]: Fix lowering of G_Shuffle_vector where we pick up the (details)
  136. Fix warning: suggest braces around initialization of subobject (details)
  137. [libcxxabi] Define _LIBCXXABI_GUARD_ABI_ARM on WebAssembly (details)
  138. [ELF] Initialize 2 fields of Symbol in SymbolTable::insert (details)
  139. Add __has_builtin support for builtin function-like type traits. (details)
  140. [FileCheck] Move -dump-input diagnostic to first line (details)
  141. [FileCheck] Document FILECHECK_OPTS in -help (details)
  142. Extend coroutines to support a "returned continuation" lowering. (details)
  143. Generalize llvm.coro.suspend.retcon to allow an arbitrary number of (details)
  144. Guard dumps in the coro intrinsic validation logic behind NDEBUG checks. (details)
  145. Add intrinsics for doing frame-bound dynamic allocations within a (details)
  146. Fix a use-after-free in the coro.alloca treatment. (details)
  147. In coro.retcon lowering, don't explode if the optimizer messes around (details)
  148. Update for optimizer changes. (details)
  149. Support swifterror in coroutine lowering. (details)
  150. Remove unreachable blocks before splitting a coroutine. (details)
  151. Don't run a full verifier pass in coro-splitting's private pipeline. (details)
  152. Coroutines: adjust for SVN r358739 (details)
  153. Remove minimum toolchain soft-error (details)
  154. Revert '[LICM] Make Loop ICM profile aware' and 'Fix pass dependency for (details)
  155. [LV] Fold-tail flag (details)
  156. [lldb] Reinstate original guard variable check (details)
  157. [NewPM][PassInstrumentation] IR printing support from clang driver (details)
  158. Removed dead code from clang/tools/libclang/CXIndexDataConsumer.{cpp,h} (details)
  159. [API] Have SBCommandReturnObject::GetOutput/Error return "" instead of (details)
  160. [InstCombine][NFC] Autogenerate checks in adjust-for-minmax.ll (details)
  161. Fix the -Wunused-variable warning. (details)
  162. [Codegen] Updated test for D66158 (details)
  163. [Intrinsics] Add a 'NoAlias' intrinsic property; annotate llvm.memcpy (details)
  164. [llvm-objdump] - Add a relocation-xindex-symbol.test test case. (details)
  165. [llvm/Object] - Convert SectionRef::getName() to return Expected<> (details)
  166. Revert r368812 "[llvm/Object] - Convert SectionRef::getName() to return (details)
  167. [MinGW] Remove stray/inconsistent comment chars in test file. NFC. (details)
  168. [MinGW] Restructure Options.td to use multiclass where sensible. NFC. (details)
  169. [MinGW] Correct handling different forms of a few options (details)
  170. [analyzer] Note last writes to a condition only in a nested stackframe (details)
  171. [ASTImporter] Import default expression of param before creating the (details)
  172. [InstCombine] Refactor getFlippedStrictnessPredicateAndConstant() out of (details)
  173. [llvm-size][test] Improve llvm-size testing (details)
  174. Fix _WIN32 / _WIN64 Wundef warnings (details)
  175. [AsmPrinter] Delete redundant .type foo, @function when emitting an (details)
  176. [clangd] Fix typos and grammar in a comment. NFC (details)
  177. [clang] - An update after LLVM change. (details)
  178. Recommit r368812 "[llvm/Object] - Convert SectionRef::getName() to (details)
  179. Improved the doc comment for getCommentsInFile (details)
  180. [NFC] Make test more robust (details)
  181. Fix "not all control paths return a value" MSVC warnings. NFCI. (details)
  182. Fix "not all control paths return a value" MSVC warning. NFCI. (details)
  183. Fix "not all control paths return a value" MSVC warnings. NFCI. (details)
  184. Removed ToolExecutor::isSingleProcess, it is not used by anything (details)
  185. [IR] Simplify removeDeadConstantUsers. NFC (details)
  186. [clangd] Loading TokenColorRules as a class mapping the rules to their (details)
  187. [DebugInfo] MCP: collect and update DBG_VALUEs encountered in local (details)
  188. [analyzer][CFG] Don't track the condition of asserts (details)
  189. [ELF][test] Update silent-ignore.test (details)
  190. Revert "Minidump/Windows: Fix module lookup" (details)
  191. [X86] Add missing regular 512-bit vXi8 extract subvector cost model (details)
  192. gn build: Pre-merge https://reviews.llvm.org/D66195 (details)
  193. [Clangd] NFC: Fixed comment typo (details)
  194. [clangd] Print qualifiers of out-of-line definitions in document outline (details)
  195. [ELF] --gdb-index: fix odd variable name cUs after r365730 and replace (details)
  196. [SimplifyCFG] Add "safe abs" test from CMSIS DSP 'abs_with_clamp()' (details)
  197. raw_ostream: add operator<< overload for std::error_code (details)
  198. [Tooling] Added DeclStmtClass to ExtractionSemicolonPolicy (details)
  199. [clangd][vscode] Surface the error when applying tweaks fails (details)
  200. Add missing SetID method to fix Windows build (details)
  201. [analyzer][NFC] Prove that we only track the evaluated part of the (details)
  202. Revert "raw_ostream: add operator<< overload for std::error_code" (details)
  203. [AIX] Add call lowering for parameters that could pass onto FPRs (details)
  204. [PowerPC][NFC] Consolidate duplicate XX3Form_SetZero and XX3Form_Zero. (details)
  205. [X86] Add llvm_unreachable to a switch that covers all expected values. (details)
  206. [X86][CostModel] Adjust the costs of ZERO_EXTEND/SIGN_EXTEND with less (details)
  207. [PowerPC][NFC] Add test for build all one vector with different types. (details)
  208. [NFC][AIX] Change assertion (details)
  209. [LangRef] Remove opening [ that was missing a closing ] from (details)
  210. [libTooling] Fix code to avoid unused-function warning after r368681. (details)
  211. [NFC] Fix testcase for ARMs (details)
  212. [X86] Use PSADBW for v8i8 addition reductions. (details)
  213. Fix cppcheck + MSVC analyzer uninitialized member variable warning. (details)
  214. [scudo][standalone] Add more stats to mallinfo (details)
  215. Rework recursive_timed_mutex so that it uses __thread_id instead of (details)
  216. [WebAssembly] Stop unrolling SIMD shifts since they are fixed in V8 (details)
  217. [mips] Split long lines in the test case file. NFC (details)
  218. [mips] Remove redundant case in the test. NFC (details)
  219. [LifetimeAnalysis] Fix false negatives of statement local lifetime (details)
  220. Add missing NativeProcessFactory for lldb-server on Windows (details)
  221. Ignore indirect branches from callbr. (details)
  222. Document clang-cpp in the release notes for clang (details)
  223. [BuildLibCalls] Noalias annotation (details)
  224. [NFC] Updated tests after r368875 (details)
  225. Fix cppcheck + MSVC analyzer uninitialized member variable warning. (details)
  226. [Sema][ObjC] Fix a -Wformat false positive with localizedStringForKey (details)
  227. [DebugLine] Improve path handling. (details)
  228. [libc++] Do not define _LIBCPP_CLANG_VER for non-LLVM Clang (details)
  229. [NFC][clang] Moving argument handling: Driver::BuildActions -> (details)
  230. [libc++] Enable <chrono> ""d and ""y literals for AppleClang 10 and up (details)
  231. [CFG] Introduce CFGElementRef, a wrapper that knows it's position in a (details)
  232. [SLC] Dereferenceable annonation - handle valid null pointers (details)
  233. This commit removes std::shared_ptr::make_shared and (details)
  234. [InstCombine][NFC] Tests for 'try to reuse constant from select in (details)
  235. Move to C++14 (details)
  236. Fix cppcheck + MSVC analyzer uninitialized member variable warning. (details)
  237. Don't explicitly check for C++14 (details)
  238. Remove now useless C++1y flag (details)
  239. [DebugInfo] Consider debug label scope has an extra lexical block file (details)
  240. Match if / elseif properly (details)
  241. InferAddressSpaces: Remove unnecessary check for ConstantInt (details)
  242. InferAddressSpaces: Move target intrinsic handling to TTI (details)
  243. Un-break the bots (details)
  244. [CMake] Fix cache invalidation of LLVM_CXX_STD (details)
  245. [RLEV] Rewrite loop exit values for multiple exit loops w/o overall loop (details)
  246. [Support][NFC] Fix error message for posix_spawn_file_actions_addopen (details)
  247. [PowerPC][NFC] Remove duplicate tests in build-vector-test.ll (details)
  248. AMDGPU: Reduce number of registers in test (details)
  249. Revert "Un-break the bots" (details)
  250. [OPENMP]Support for non-rectangular loops. (details)
  251. [lldb][NFC] Remove unused function (details)
  252. [SDAG] move variable closer to use; NFC (details)
  253. [SLP][NFC] Use pointers to address to ScalarToTreeEntry elements, (details)
  254. Add support in CMake to statically link the C++ standard library. (details)
  255. MathExtras.h: don't check for unsupported GCC versions (details)
  256. SwapByteOrder.h: don't check for unsupported GCC versions (details)
  257. Use std::is_final directly (details)
  258. [libc++] Mark std::tuple CTAD test as failing on AppleClang 9 (details)
  259. [clang-doc] Add missing check in tests (details)
  260. [x86] add tests for fadd reduction; NFC (details)
  261. [libc++] Mark <chrono> test as unsupported on AppleClang 9 (details)
  262. [Bugpoint redesign] Reduced scope of variables in Delta implementation (details)
  263. Fix thread comparison by making sure we never pass our special 'not a (details)
  264. [AMDGPU] Do not assume a default GCN target (details)
  265. [Bugpoint redesign] Added Pass to Remove Global Variables (details)
  266. [Attributor] Use IRPosition consistently (details)
  267. Revert "[lldb] Reinstate original guard variable check" (details)
  268. [Attributor] Do not update or manifest dead attributes (details)
  269. [Attributor] Use liveness during the creation of AAReturnedValues (details)
  270. [AArch64][GlobalISel] Custom selection for s8 load acquire. (details)
  271. [Attributor] Use the AANoNull attribute directly in AADereferenceable (details)
  272. [Attributor][NFC] Add merge/join/clamp operators to the IntegerState (details)
  273. [SelectionDAGBuilder] Teach gather/scatter getUniformBase to look (details)
  274. [Attributor][NFC] Introduce statistics macros for new positions (details)
  275. [Attributor][NFC] Try to eliminate warnings (debug build + fall through) (details)
  276. [LifetimeAnalysis] Support std::stack::top() and std::optional::value() (details)
  277. [SCEV] Rename getMaxBackedgeTakenCount to (details)
  278. [Attributor][NFC] Make debug output consistent (details)
  279. [docs] Fix sphinx doc generation errors (details)
  280. [LLDB] Migrate llvm::make_unique to std::make_unique (details)
  281. [Bugpoint redesign] Modified Functions pass to consider declarations (details)
  282. [Polly] Migrate llvm::make_unique to std::make_unique (details)
  283. [LLD] Migrate llvm::make_unique to std::make_unique (details)
  284. Improve anonymous class heuristic in ClangASTContext::CreateRecordType (details)
  285. [Attributor] Try to fix "missing field 'RetInsts' initializer" warning (details)
  286. Remove LVALUE / RVALUE workarounds (details)
  287. Fix handling of class member access into a vector type. (details)
  288. [www] Update DR status page to match latest version of CWG issues list. (details)
  289. [Clang] Migrate llvm::make_unique to std::make_unique (details)
  290. [clang-tools-extra] Migrate llvm::make_unique to std::make_unique (details)
  291. Expose TailCallKind via the LLVM C API (details)
  292. [compiler-rt] Migrate llvm::make_unique to std::make_unique (details)
  293. [sanitizer_common] Replace forkpty with posix_spawn on Darwin (details)
  294. [coroutine] Fixes "cannot move instruction since its users are not (details)
  295. [NFCI] Always initialize BugReport const fields (details)
  296. gn build: Merge r368918 (details)
  297. Revert "[compiler-rt] Migrate llvm::make_unique to std::make_unique" (details)
  298. Revert "Expose TailCallKind via the LLVM C API" (details)
  299. [NFC] Update doc comment to fix warning. (details)
  300. [X86] Remove some dead code and combine some repeated code that's left. (details)
  301. [NFC] Remove documentation comment to fix warning. (details)
  302. [Tooling] Add a hack to work around issues with matcher binding in (details)
  303. [NFC] Fix documentation for some utility classes. (details)
  304. [CMake] Check for C++14 instead of C++11 (details)
  305. [llvm-objcopy] Move duplicate tablegen from objcopy and strip into one (details)
  306. Fix variable mismatch between signature and body (details)
  307. [llvm-objdump] Add warning messages if disassembly + source for (details)
  308. [ELF][PPC] Improve error message for unknown relocations (details)
  309. [X86] Remove some unreachable code from LowerBITCAST. (details)
  310. [X86] Disable custom type legalization for v2i32/v4i16/v8i8->f64 (details)
  311. [X86] Disable custom type legalization for v2i32/v4i16/v8i8->i64. (details)
  312. [X86] Remove unneeded isel pattern for v4f32->v4i32 fp_to_sint and (details)
  313. [X86] Add test cases for _mm_movepi64_pi64 and _mm_movpi64_epi64. (details)
  314. [Clang] Pragma vectorize_predicate implies vectorize (details)
  315. [X86] Make sure load is non-volatile in the MMX_X86movdq2q (loadv2i64) (details)
  316. [X86] Add isel pattern to match VZEXT_MOVL and a v2i64 scalar_to_vector (details)
  317. [LV] fold-tail predication should be respected even with assume_safety (details)
  318. [llvm-readobj][MachO] Fix section type printing (details)
  319. [lldb] Let LLDB depend on intrinsics_gen to fix non-deterministic module (details)
  320. [clang] Loop pragma parsing. NFC. (details)
  321. MemoryBuffer: Add a missing error-check to getOpenFileImpl (details)
  322. [InstCombine] Precommit test case for D66216 (details)
  323. [analyzer] Add docs for cplusplus.InnerPointer (details)
  324. [analyzer] Warn about -analyzer-configs being meant for development (details)
  325. [ARM] MVE trunc to i1 vectors (details)
  326. [llvm-objcopy] Allow 'protected' visibility to be set when using (details)
  327. [ELF][AArch64] Improve error message for unknown relocations (details)
  328. [Support] Fix Wundef warning (details)
  329. Revert rL368939 "Remove LVALUE / RVALUE workarounds" (details)
  330. Add ptrmask intrinsic (details)
  331. [AArch64] Change location of frame-record within callee-save area. (details)
  332. [ARM] MVE predicate store patterns (details)
  333. Bump llvm-go to C++14 (details)
  334. Replace llvm::integer_sequence and friends with the C++14 standard (details)
  335. [clangd] llvm::integer_sequence -> std::integer_sequence. (details)
  336. [ADT] PointerUnion: Use C++14 constexpr std::min (details)
  337. [ValueTracking] Add MustPreserveNullness arg to functions analyzing (details)
  338. [MCA] Slightly refactor the logic in ResourceManager. NFCI (details)
  339. [SDAG][x86] check for relaxed math when matching an FP reduction (details)
  340. [ARM] Fix alignment checks for BE VLDRH (details)
  341. [CodeGen] Do the Simple Early Return in block-placement pass to optimize (details)
  342. [DAGCombine] MergeConsecutiveStores - fix cppcheck/MSVC extension (details)
  343. [OpenMP] Turn on -Wall compiler warnings by default (details)
  344. [lldb][NFC] Refactor remaining completion logic to use (details)
  345. [OMPT] Resolve warnings because of ints in if conditions (details)
  346. [OpenMP] Remove 'unnecessary parentheses' (details)
  347. [OpenMP] Enable warning about "implicit fallthrough" (details)
  348. [lib/Object] - Remove objdump-file-header.test (details)
  349. [clangd] Don't use Bind() where C++14 move capture works (details)
  350. [PowerPC] Use xxleqv to set all one vector IMM(-1). (details)
  351. Remove BitVector.h include. NFCI. (details)
  352. Remove SmallBitVector.h include. NFCI. (details)
  353. Re-land "[compiler-rt] Migrate llvm::make_unique to std::make_unique" (details)
  354. [MCA] Slightly refactor class RetireControlUnit, and add the ability to (details)
  355. [cmake] install_symlink should obey DESTDIR unconditionally (details)
  356. Add a proposal for a libc project under the LLVM umbrella. (details)
  357. [llvm] Migrate llvm::make_unique to std::make_unique (details)
  358. [Hexagon] Generate vector min/max for HVX (details)
  359. [BUNDLER]Improve the test, NFC. (details)
  360. [LLVM][Alignment] Fix MSVC potential division by 0 warning (PR42911) (details)
  361. [Support] Base RWMutex on std::shared_timed_mutex (C++14) (details)
  362. [Driver][Bundler] Improve bundling of object files. (details)
  363. Test commit #2. (details)
  364. [sanitizer_common] Always use posix_spawn on Darwin (details)
  365. [X86] Improve cost model for subvector extraction of less than 128-bit (details)
  366. Fix lld on GCC 5.1 after the C++14 move (details)
  367. [NewPM][PassInstrumentation] IR printing support for (Thin)LTO (details)
  368. [CallGraph] Refine call graph for indirect calls with !callees metadata (details)
  369. [DebugInfo] Avoid crash from dropped fragments in LiveDebugValues (details)
  370. Revert "MemoryBuffer: Add a missing error-check to getOpenFileImpl" (details)
  371. Fix the test, NFC. (details)
  372. Link libpthread into LLVMCore.so (details)
  373. Add LLVMLibC proposal to docs/index.rst. (details)
  374. [X86] Add custom type legalization for bitcasting mmx to (details)
  375. [NFC] Added tests for 'select with ctlz to cttz' fold (details)
  376. Allow standards-based attributes to have leading and trailing (details)
  377. Change test to use uint64_t to support compiling for 32-bit (details)
  378. Rename this file from cx2.c to c2x.c; NFC. (details)
  379. [ValueTracking] Look through ptrmask intrinsics during (details)
  380. [NFC] Add a couple of dump routines for RegisterPressure helper classes (details)
  381. MVT: Add v3i16/v3f16 vectors (details)
  382. Revert [Bugpoint redesign] Added Pass to Remove Global Variables (details)
  383. [Hexagon] Fix instruction selection for vselect v4i8 (details)
  384. Apply llvm-prefer-register-over-unsigned from clang-tidy to LLVM (details)
  385. [WebAssembly] Correctly handle va_arg of zero-sized structures (details)
  386. [Sema] Implement DR2386 for C++17 structured binding (details)
  387. Mark the test as unsupported on darwin, NFC. (details)
  388. Fix nm on GCC 5.1 after the C++14 move (details)
  389. gn build: Merge r369018 (details)
  390. gn build: Merge r369039 (details)
  391. [GWP-ASan] Implement stack frame compression. (details)
  392. [Rewrite][NFC] Add FIXMEs and tests for RemoveLineIfEmpty bug (details)
  393. [MemorySSA] Remove restrictive asserts. (details)
  394. Remove CMake >= v3.13 target_link_options. Instead, use (details)
  395. Stop-hooks weren't getting called on step-out. Fix that. (details)
  396. Add missing MIR serialization text for AArch64II::MO_TAGGED. (details)
  397. [Utils][NFC] Copy bisect usage documents from commit msg into script. (details)
  398. Guard fuzzer build behind Clang-only flags. (details)
  399. [Support] Re-introduce the RWMutexImpl for macOS < 10.12 (details)
  400. [SDAG] Minor code cleanup/standardization of atomic accessors [NFC] (details)
  401. [AIX] For XL, pick GCC-compatible std & default warning options (details)
  402. Revert "[Support] Re-introduce the RWMutexImpl for macOS < 10.12" (details)
  403. [Bugpoint redesign] Output option can now print to STDOUT (details)
  404. [Bugpoint redesign] Added Pass to Remove Global Variables (details)
  405. Move isPointerOffset function to ValueTracking (NFC). (details)
  406. [clang-doc] Fix bitcode writer for access specifiers (details)
  407. [Support] Re-introduce the RWMutexImpl for macOS < 10.12 (details)
  408. [clang-doc] Fix use of source-root flag (details)
  409. [NewPM][PassInstrumentation] Fix test added in r369024. (details)
  410. Re-instate 369051. (details)
  411. [clang-doc] Sort index elements case insensitive (details)
  412. [ARM][LowOverheadLoops] Fix generated code for "revert". (details)
  413. [GlobalISel] CSEMIRBuilder: Add support for G_GEP (details)
  414. Moved binary off add_llvm_executable. Used add_executable instead, as (details)
  415. [DebugLine] Don't try to guess the path style (details)
  416. gn build: Merge r369061 (details)
  417. gn build: Merge r369064 (details)
  418. [clang-doc] Serialize inherited attributes and methods (details)
  419. [clang-tidy] Migrate objc-forbidden-subclassing to use isDerivedFrom 🚛 (details)
  420. [PowerPC] add testcases for folding frame offset - NFC (details)
  421. [analyzer] Analysis: Silence checkers (details)
  422. Disable stack_trace_compressor_fuzzer. (details)
  423. Revert r368987, it caused PR43016. (details)
  424. [clang-tidy] Migrate objc-super-self to use isDerivedFrom 🚛 (details)
  425. Remove the temporary code. NFC. (details)
  426. [lldb-server] Disable a test on Windows until it can be fixed (details)
  427. [X86] Manually reimplement getTargetInsertSubreg in (details)
  428. [ValueTracking] Fix recurrence detection to check both PHI operands. (details)
  429. [clangd] Remove Bind, use C++14 lambda captures instead. NFC (details)
  430. [clangd] Added highlighting for non type templates. (details)
  431. AssumptionCache: remove old affected values after RAUW. (details)
  432. [DebugInfo] Handle complex expressions with spills in LiveDebugValues (details)
  433. [RISCV] Add inline asm constraint A for RISC-V (details)
  434. [SLPVectorizer] Silence null dereference warning. NFCI. (details)
  435. [RISCV] Lower inline asm constraint A for RISC-V (details)
  436. Revert "[CallGraph] Refine call graph for indirect calls with !callees (details)
  437. [RISCV] Allow parsing of bare symbols with offsets (details)
  438. [ASTImporter] Import ctor initializers after setting flags. (details)
  439. Fix typos in LibASTImporter.rst (details)
  440. [clangd] Simplify code of ClangdLSPServer::onCommand (details)
  441. [ARM] Don't pretend we know how to generate MVE VLDn (details)
  442. [X86] Add test case for future MULFIX DAG combine folds. NFC (details)
  443. [DAGCombiner] Add simple folds for SMULFIX/UMULFIX/SMULFIXSAT (details)
  444. Revert [CodeGen] Do the Simple Early Return in block-placement pass to (details)
  445. [clangd] suppress -Wparentheses warning: suggest parentheses around ‘&&’ (details)
  446. [x86] add tests for fdiv with variable operands; NFC (details)
  447. [x86] fix fdiv test; NFC (details)
  448. [ARM] Correct register for narrowing and widening MVE loads and stores. (details)
  449. [libcxxabi] __cxa_guard_require: test guard byte with != 0 instead of == (details)
  450. [X86] Remove unused include. NFCI. (details)
  451. [AArch64InstrInfo] Stop getInstSizeInBytes returning non-zero for meta (details)
  452. [X86][SSE] Add shuffled load tests from PR16739 (details)
  453. [lldb][NFC] Allow for-ranges on StringList (details)
  454. [RISCV] Convert registers from unsigned to Register (details)
  455. Revert rL369112 : [X86][SSE] Add shuffled load tests from PR16739 (details)
  456. [X86][SSE] Add shuffled load tests from PR16739 (details)
  457. [InstCombine] Shift amount reassociation in bittest: trunc-of-shl (details)
  458. [ARM] MVE sext of a load is free (details)
  459. [TextAPI] Update reader to be supported by lib/Object (details)
  460. [InstCombine] Simplify pow(2.0, itofp(y)) to ldexp(1.0, y) (details)
  461. [lld][Hexagon]Support HEX_32 when building shared objects (details)
  462. Relanding r368987 [AArch64] Change location of frame-record within (details)
  463. [clang-doc] Fix records in global namespace (details)
  464. [Hexagon] Generate min/max instructions for 64-bit vectors (details)
  465. [CodeGen/Analysis] Intrinsic llvm.assume should not block tail call (details)
  466. [X86] Alphabetize pass initialization definitions. NFCI. (details)
  467. [SLP] add tests for PR16739; NFC (details)
  468. [ELF][Hexagon] Replace R_HEXAGON_GOT with R_GOTPLT (details)
  469. Fix llvm-config support for CMake build-mode-style builds (details)
  470. [ADT] Remove llvm::make_unique utility. (details)
  471. [SLPVectorizer] Make the scheduler aware of the TreeEntry operands. (details)
  472. Revert [AArch64InstrInfo] Stop getInstSizeInBytes returning non-zero for (details)
  473. [AArch64InstrInfo] Stop getInstSizeInBytes returning non-zero for meta (details)
  474. [X86] combineExtractWithShuffle - handle extract(truncate(x), 0) (details)
  475. [AArch64][GlobalISel] Lower G_SHUFFLE_VECTOR with 1 elt src and 1 elt (details)
  476. [X86] resolveTargetShuffleInputs - add DemandedElts variant. NFCI. (details)
  477. [WebAssembly] Forbid use of EM_ASM with setjmp/longjmp (details)
  478. Escape % in printf format string. (details)
  479. [clang-doc] Redesign of generated HTML files (details)
Commit 5b32752d107aec1dbe8676a080c4ae9866a2607c by Stanislav.Mekhanoshin
[AMDGPU] removed unused functions from printf lowering
Differential Revision: https://reviews.llvm.org/D66117
llvm-svn: 368633
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPUPrintfRuntimeBinding.cpp
Commit 6817ce24c17261a8c9ec52d0dfd211ec89483962 by Akira
Do not call replaceAllUsesWith to upgrade calls to ARC runtime functions
to intrinsic calls
This fixes a bug in r368311.
It turns out that the ARC runtime functions in the IR can have pointer
parameter types that are not i8* or i8**. Instead of RAUWing normal
functions with intrinsics, manually bitcast the arguments before passing
them to the intrinsic functions and bitcast the return value back to the
type of the original call instruction.
rdar://problem/54125406
llvm-svn: 368634
The file was modifiedllvm/test/Bitcode/upgrade-arc-runtime-calls.ll
The file was modifiedllvm/test/Bitcode/upgrade-mrr-runtime-calls.bc
The file was modifiedllvm/test/Bitcode/upgrade-arc-runtime-calls.bc
The file was modifiedllvm/lib/IR/AutoUpgrade.cpp
Commit b2cff5e50f880df795db6c3dc382bf10014dd7a7 by craig.topper
[X86] Remove 'Server' from Tigerlake description comments.
Tigerlake is a client CPU not a server CPU.
llvm-svn: 368635
The file was modifiedclang/include/clang/Basic/X86Target.def
Commit 4acb4ee767d0f450f6b87a68e6c9e483ee0744b6 by echristo
Move findBBwithCalls to the file it's used in to avoid unused function
warnings.
llvm-svn: 368636
The file was modifiedllvm/lib/ExecutionEngine/Orc/SpeculateAnalyses.cpp
The file was modifiedllvm/include/llvm/ExecutionEngine/Orc/SpeculateAnalyses.h
Commit c1098089825654f7f1ab669cb3f6359904df85fb by Akira
Revert "Do not call replaceAllUsesWith to upgrade calls to ARC runtime
functions"
This reverts commit r368634 because it broke a bot.
llvm-svn: 368637
The file was modifiedllvm/test/Bitcode/upgrade-mrr-runtime-calls.bc
The file was modifiedllvm/test/Bitcode/upgrade-arc-runtime-calls.ll
The file was modifiedllvm/lib/IR/AutoUpgrade.cpp
The file was modifiedllvm/test/Bitcode/upgrade-arc-runtime-calls.bc
Commit f4446f177505d5bd94f843a6d6a74f71e7320f22 by apl
[Symbol] Remove redundant include
llvm-svn: 368638
The file was modifiedlldb/source/Symbol/ClangASTContext.cpp
Commit 3ffa688dfca4983655d1c9f79e60c70a6404da34 by Alex Lorenz
clang-scan-deps: do not spawn threads when LLVM_ENABLE_THREADS is
disabled
llvm-svn: 368640
The file was modifiedclang/test/ClangScanDeps/regular_cdb.cpp
The file was modifiedclang/tools/clang-scan-deps/ClangScanDeps.cpp
Commit d8c47d52da518e9c3c3c9053419ef36dbfbd441b by jlettner
[TSan] Fix test failing on Linux
llvm-svn: 368641
The file was modifiedcompiler-rt/test/tsan/libdispatch/dispatch_once_deadlock.c
Commit a58a27513ba94b458d6481fdbdfca61e08331cc2 by daniel_l_sanders
Eliminate implicit Register->unsigned conversions in VirtRegMap. NFC
Summary: This was mostly an experiment to assess the feasibility of
completely eliminating a problematic implicit conversion case in D61321
in advance of landing that* but it also happens to align with the goal
of propagating the use of Register/MCRegister instead of unsigned so I
believe it makes sense to commit it.
The overall process for eliminating the implicit conversions from
Register/MCRegister -> unsigned was to: 1. Add an explicit conversion to
support genuinely required conversions to
  unsigned. For example, using them as an index for IndexedMap. Sadly
it's
  not possible to have an explicit and implicit conversion to the same
  type and only deprecate the implicit one so I called the explicit
  conversion get(). 2. Temporarily annotate the implicit conversion to
unsigned with
  LLVM_ATTRIBUTE_DEPRECATED to make them visible 3. Eliminate implicit
conversions by propagating Register/MCRegister/
  explicit-conversions appropriately 4. Remove the deprecation added in
2.
* My conclusion is that it isn't feasible as there's too much code to
update in one go.
Depends on D65678
Reviewers: arsenm
Subscribers: MatzeB, wdng, hiraditya, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D65685
llvm-svn: 368643
The file was modifiedllvm/include/llvm/CodeGen/MachineRegisterInfo.h
The file was modifiedllvm/include/llvm/CodeGen/TargetRegisterInfo.h
The file was modifiedllvm/include/llvm/CodeGen/LiveIntervals.h
The file was modifiedllvm/lib/CodeGen/VirtRegMap.cpp
The file was modifiedllvm/include/llvm/CodeGen/LiveRegUnits.h
The file was modifiedllvm/include/llvm/CodeGen/Register.h
The file was modifiedllvm/include/llvm/CodeGen/MachineBasicBlock.h
The file was modifiedllvm/include/llvm/CodeGen/VirtRegMap.h
The file was modifiedllvm/lib/CodeGen/TargetRegisterInfo.cpp
The file was modifiedllvm/include/llvm/MC/MCRegister.h
The file was modifiedllvm/include/llvm/CodeGen/MachineInstr.h
The file was modifiedllvm/lib/CodeGen/MachineBasicBlock.cpp
Commit 6e18c7f8d4b5d9b4ea1c9590289489ab9115bff0 by llvm
[lld] Remove unnecessary "class Lazy"
llvm-svn: 368644
The file was modifiedlld/COFF/InputFiles.h
Commit 438315bf69c7dae68edd5c99f9672fffdc442a79 by Stanislav.Mekhanoshin
[AMDGPU] Fix msan failure in printf lowering
llvm-svn: 368645
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPUPrintfRuntimeBinding.cpp
Commit 3c7c053145fa98a017d426b475a9cf9c001c9da1 by Akira
Do not call replaceAllUsesWith to upgrade calls to ARC runtime functions
to intrinsic calls
This fixes a bug in r368311.
It turns out that the ARC runtime functions in the IR can have pointer
parameter types that are not i8* or i8**. Instead of RAUWing normal
functions with intrinsics, manually bitcast the arguments before passing
them to the intrinsic functions and bitcast the return value back to the
type of the original call instruction.
This recommits r368634, which was reverted in r368637. The loop in the
patch was iterating over uses of a function and deleting function calls
inside it, which caused bots to crash.
rdar://problem/54125406
Differential Revision: https://reviews.llvm.org/D66047
llvm-svn: 368646
The file was modifiedllvm/test/Bitcode/upgrade-arc-runtime-calls.ll
The file was modifiedllvm/test/Bitcode/upgrade-mrr-runtime-calls.bc
The file was modifiedllvm/test/Bitcode/upgrade-arc-runtime-calls.bc
The file was modifiedllvm/lib/IR/AutoUpgrade.cpp
Commit 8b996dc16ee4ed16922b33c616b3c21911438d5f by yevgeny.rouban
Verifier: check prof branch_weights
This patch is to check some of constraints on
!pro branch_weights metadata:
https://llvm.org/docs/BranchWeightMetadata.html
Reviewers: asbirlea, reames, chandlerc Reviewed By: reames Differential
Revision: https://reviews.llvm.org/D61179
llvm-svn: 368647
The file was modifiedllvm/lib/IR/Verifier.cpp
Commit 70fdfed45f040bf27787a0fc4ebc8f483298bde3 by aditya_nandakumar
[GlobalISel]: Add KnownBits for G_XOR
https://reviews.llvm.org/D66119
llvm-svn: 368648
The file was modifiedllvm/lib/CodeGen/GlobalISel/GISelKnownBits.cpp
The file was modifiedllvm/unittests/CodeGen/GlobalISel/KnownBitsTest.cpp
Commit 892cdc73be231c0148ca092260644c30b1dd4e16 by maskray
[ELF][test] Add dynamic-list-preempt2.s
When producing a DSO, the isPreemptible property of a Defined with
default or protected visibility is affected by the --dynamic-list file,
but not by interposable symbols in other DSOs.
llvm-svn: 368649
The file was addedlld/test/ELF/dynamic-list-preempt2.s
Commit 2a09b9acfb6fa14bbb08df3c13fb9fb0d09069d1 by sepavloff
Added unit tests to check supported rounding modes
Also added fixed misspelled metadata name.
Differential Revision: https://reviews.llvm.org/D66073
llvm-svn: 368650
The file was modifiedllvm/unittests/IR/IRBuilderTest.cpp
The file was modifiedllvm/lib/IR/IntrinsicInst.cpp
Commit ab04ad6af760a203eda7624e97fcb7bbca9fceab by maskray
[ELF] Rename odd variable names "New" after r365730. NFC
New -> newSym or newFlags
Reviewed By: atanasyan
Differential Revision: https://reviews.llvm.org/D66127
llvm-svn: 368651
The file was modifiedlld/ELF/Symbols.h
The file was modifiedlld/ELF/Arch/MipsArchTree.cpp
The file was modifiedlld/ELF/LinkerScript.cpp
The file was modifiedlld/ELF/SymbolTable.h
The file was modifiedlld/ELF/SymbolTable.cpp
The file was modifiedlld/ELF/InputFiles.cpp
Commit e14c91b71aedcf494f495189fc0ccae608ecb7fd by aemerson
[GlobalISel] Make the InstructionSelector instance non-const, allowing
state to be maintained.
Currently we can't keep any state in the selector object that we get
from subtarget. As a result we have to plumb through all our variables
through multiple functions. This change makes it non-const and adds a
virtual init() method to allow further state to be captured for each
target.
AArch64 makes use of this in this patch to cache a call to
hasFnAttribute() which is expensive to call, and is used on each
selection of G_BRCOND.
Differential Revision: https://reviews.llvm.org/D65984
llvm-svn: 368652
The file was modifiedllvm/lib/CodeGen/GlobalISel/InstructionSelect.cpp
The file was modifiedllvm/lib/Target/AArch64/AArch64InstructionSelector.cpp
The file was modifiedllvm/lib/Target/X86/X86InstructionSelector.cpp
The file was modifiedllvm/lib/Target/Mips/MipsInstructionSelector.cpp
The file was modifiedllvm/lib/Target/Mips/MipsSubtarget.cpp
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.cpp
The file was modifiedllvm/include/llvm/CodeGen/GlobalISel/InstructionSelector.h
The file was modifiedllvm/lib/Target/ARM/ARMSubtarget.h
The file was modifiedllvm/lib/Target/X86/X86Subtarget.cpp
The file was modifiedllvm/lib/Target/ARM/ARMSubtarget.cpp
The file was modifiedllvm/lib/Target/AArch64/AArch64Subtarget.cpp
The file was modifiedllvm/lib/Target/ARM/ARMInstructionSelector.cpp
The file was modifiedllvm/lib/Target/AArch64/AArch64Subtarget.h
The file was modifiedllvm/lib/Target/Mips/MipsSubtarget.h
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPUSubtarget.h
The file was modifiedllvm/lib/Target/X86/X86Subtarget.h
The file was modifiedllvm/include/llvm/CodeGen/TargetSubtargetInfo.h
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.h
Commit 72c81b94cb3aed05516a872c294899d304e27fc8 by aemerson
[AArch64][GlobalISel] Replace explicit vreg creation with implicit using
SrcOp. NFC.
llvm-svn: 368653
The file was modifiedllvm/lib/Target/AArch64/AArch64InstructionSelector.cpp
Commit 4fb99a3330e9a8b1ab967bdb3c04ed2f8b5e1f5e by qiucofan
[PowerPC] Fix ICE when truncating some vectors
The legalizer would hit an assertion on PowerPC platform when truncating
a vector whose size is not power of 2.  This patch is to add a check to
prevent vectors with such odd-size elements from being custom lowered.
Reviewed By: Hal Finkel
Differential Revision: https://reviews.llvm.org/D65261
llvm-svn: 368654
The file was modifiedllvm/lib/Target/PowerPC/PPCISelLowering.cpp
The file was addedllvm/test/CodeGen/PowerPC/pr25080.ll
Commit b427c061ad10a2e111ec2e3a63776c4b126faf30 by 1.int32
[ASTImporter] Import additional flags for functions.
Summary: At AST import of function delcarations import the flags for
defaulted and deleted.
Reviewers: martong, a.sidorin, shafik, a_sidorin
Reviewed By: a_sidorin
Subscribers: rnkovacs, dkrupp, Szelethus, gamesh411, cfe-commits
Tags: #clang
Differential Revision: https://reviews.llvm.org/D65999
llvm-svn: 368655
The file was modifiedclang/lib/AST/ASTImporter.cpp
The file was modifiedclang/unittests/AST/ASTImporterTest.cpp
Commit 09eb71ced3b80211f3997bd7bc2844c61cd265c7 by lebedev.ri
[NFC][InstCombine] Non-canonical clamp pattern: non-canonical predicate
tests
We can't handle 'uge' case because we can't ever get it, there needs to
be extra use on that compare or else it will be canonicalized, but
because of extra use we can't handle it.
'sge' case we can have.
llvm-svn: 368656
The file was modifiedllvm/test/Transforms/InstCombine/canonicalize-clamp-like-pattern-between-negative-and-positive-thresholds.ll
Commit 39130314feeda2d3e0f8966c3809e9cd73ff6b22 by david.bolvansky
[SimplifyLibCalls] Add dereferenceable bytes from known callsites
Summary: int mm(char *a, char *b) {
   return memcmp(a,b,16);
}
Currently: define dso_local i32 @mm(i8* nocapture readonly %a, i8*
nocapture readonly %b) local_unnamed_addr #1 { entry:
%call = tail call i32 @memcmp(i8* %a, i8* %b, i64 16)
ret i32 %call
}
After patch: define dso_local i32 @mm(i8* nocapture readonly %a, i8*
nocapture readonly %b) local_unnamed_addr #1 { entry:
%call = tail call i32 @memcmp(i8* dereferenceable(16)  %a, i8*
dereferenceable(16)  %b, i64 16)
ret i32 %call
}

Reviewers: jdoerfert, efriedma
Reviewed By: jdoerfert
Subscribers: javed.absar, spatel, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D66079
llvm-svn: 368657
The file was modifiedllvm/test/Transforms/InstCombine/memcpy-from-global.ll
The file was modifiedllvm/test/Transforms/InstCombine/memcmp-constant-fold.ll
The file was modifiedllvm/test/Transforms/InstCombine/memcpy.ll
The file was modifiedllvm/test/Transforms/InstCombine/strcmp-1.ll
The file was modifiedllvm/test/Transforms/InstCombine/strcmp-memcmp.ll
The file was modifiedllvm/test/Transforms/MemCpyOpt/memcpy-to-memset-with-lifetimes.ll
The file was modifiedllvm/test/Analysis/TypeBasedAliasAnalysis/memcpyopt.ll
The file was modifiedllvm/test/Transforms/InstCombine/ARM/strcmp.ll
The file was addedllvm/test/Transforms/InstCombine/mem-deref-bytes.ll
The file was modifiedllvm/test/Transforms/InstCombine/memmove_chk-1.ll
The file was modifiedllvm/test/Transforms/InstCombine/strcpy_chk-1.ll
The file was modifiedllvm/test/Transforms/InstCombine/memcpy-to-load.ll
The file was modifiedllvm/test/Transforms/InstCombine/strncpy_chk-1.ll
The file was modifiedllvm/include/llvm/Transforms/Utils/SimplifyLibCalls.h
The file was modifiedllvm/lib/Transforms/Utils/SimplifyLibCalls.cpp
The file was modifiedllvm/test/Transforms/InstCombine/sprintf-1.ll
The file was modifiedllvm/test/Transforms/InstCombine/align-addr.ll
The file was modifiedllvm/test/Transforms/InstCombine/memset_chk-1.ll
The file was modifiedllvm/test/Transforms/InstCombine/memchr.ll
The file was modifiedllvm/test/Transforms/InstCombine/objsize.ll
The file was modifiedllvm/test/Transforms/InstCombine/stpcpy_chk-1.ll
The file was modifiedllvm/test/Transforms/InstCombine/memcpy_chk-1.ll
Commit c3012b2c26b05de4fe770ce6971162eff1aabeb7 by david.bolvansky
[NFC] Updated tests after r368657
llvm-svn: 368658
The file was modifiedclang/test/CodeGenCXX/auto-var-init.cpp
The file was modifiedclang/test/CodeGen/tbaa-struct.cpp
Commit c6cd62352cc15110c7a7389721560046a6635cde by maskray
[ELF] Simplify handling of exportDynamic and isPreemptible
In Writer::includeInDynSym(), exportDynamic is used by a Defined with
protected or default visibility, to record whether it is required to be
exported into .dynsym. It is set when any of the following conditions
hold:
1) There is an interposable symbol from a DSO (Undefined or SharedSymbol
with default visibility) 2) If -shared or --export-dynamic is specified,
any symbol in an object file/bitcode sets this property, unless
suppressed by canBeOmittedFromSymbolTable(). 3) --dynamic-list when
producing an executable
4) protected symbol from a DSO preempted by copy relocation/canonical
PLT when
--ignore-{data,function}-address-equality is specified 5) ifunc is
exported when -z ifunc-noplt is specified
Bullet points 4) and 5) are irrelevant in this patch.
Bullet 3) does not play well with 1) and 2). When -shared is specified,
exportDynamic of most symbols is true. This makes it incapable to record
--dynamic-list marked symbols. We thus have obscure:
    if (!config->shared)
     b->exportDynamic = true;
   else if (b->includeInDynsym())
     b->isPreemptible = true;
This patch adds another bit `Symbol::inDynamicList` to record 3). We can
thus simplify handleDynamicList() by unifying the DSO and
executable cases. It also allows us to simplify isPreemptible - now the
field is only used in finalizeSections() and later stages.
Reviewed By: peter.smith
Differential Revision: https://reviews.llvm.org/D66091
llvm-svn: 368659
The file was modifiedlld/ELF/Symbols.cpp
The file was modifiedlld/ELF/Writer.cpp
The file was modifiedlld/ELF/SymbolTable.cpp
The file was modifiedlld/ELF/Symbols.h
Commit 5390d25f2b5cd6a9b234e30269661d7019a9850e by hans
Revert r368276 "[TargetLowering] SimplifyDemandedBits - call
SimplifyMultipleUseDemandedBits for ISD::EXTRACT_VECTOR_ELT"
This introduced a false positive MemorySanitizer warning about use of
uninitialized memory in a vectorized crc function in Chromium. That
suggests maybe something is not right with this transformation. See
https://crbug.com/992853#c7 for a reproducer.
This also reverts the follow-up commits r368307 and r368308 which
depended on this.
> This patch attempts to peek through vectors based on the demanded
bits/elt of a particular ISD::EXTRACT_VECTOR_ELT node, allowing us to
avoid dependencies on ops that have no impact on the extract.
>
> In particular this helps remove some unnecessary
scalar->vector->scalar patterns.
>
> The wasm shift patterns are annoying - @tlively has indicated that the
wasm vector shift codegen are to be refactored in the near-term and
isn't considered a major issue.
>
> Differential Revision: https://reviews.llvm.org/D65887
llvm-svn: 368660
The file was modifiedllvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.cpp
The file was modifiedllvm/test/CodeGen/WebAssembly/simd-extended-extract.ll
The file was modifiedllvm/test/CodeGen/X86/shrink_vmul.ll
The file was modifiedllvm/test/CodeGen/X86/vec_smulo.ll
The file was modifiedllvm/test/CodeGen/WebAssembly/simd-arith.ll
The file was modifiedllvm/test/CodeGen/X86/promote-vec3.ll
The file was modifiedllvm/test/CodeGen/X86/vector-reduce-mul.ll
The file was modifiedllvm/test/CodeGen/X86/avx512-intrinsics-fast-isel.ll
The file was modifiedllvm/test/CodeGen/AArch64/vecreduce-and-legalization.ll
The file was modifiedllvm/test/CodeGen/X86/vec_umulo.ll
The file was modifiedllvm/test/CodeGen/ARM/dagcombine-anyexttozeroext.ll
The file was modifiedllvm/test/CodeGen/X86/xor.ll
Commit dc06b0bc9ad055d06535462d91bfc2a744b2f589 by maskray
[ELF] Don't special case symbolic relocations with 0 addend to ifunc in
writable locations
Currently the following 3 relocation types do not trigger the creation
of a canonical PLT (which changes STT_GNU_IFUNC to STT_FUNC and
redirects all references):
1) GOT-generating (`needsGot`) 2) PLT-generating (`needsPlt`) 3) R_ABS
with 0 addend in a writable location. This is used for
for ifunc function pointers in writable sections such as .data and
.toc.
This patch deletes case 3) to simplify the R_*_IRELATIVE generating
logic added in D57371. Other advantages:
* It is guaranteed no more than 1 R_*_IRELATIVE is created for an ifunc.
* PPC64: no need to special case ifunc in toc-indirect to toc-relative
relaxation. See D65755
The deleted elf::addIRelativeRelocs demonstrates that one-pass scan
through relocations makes several optimizations difficult. This is
something we can think about in the future.
Reviewed By: peter.smith
Differential Revision: https://reviews.llvm.org/D65995
llvm-svn: 368661
The file was modifiedlld/test/ELF/gnu-ifunc-canon.s
The file was modifiedlld/test/ELF/ppc64-toc-relax-ifunc.s
The file was modifiedlld/ELF/Writer.cpp
The file was modifiedlld/ELF/Arch/PPC64.cpp
The file was modifiedlld/ELF/Relocations.cpp
The file was addedlld/test/ELF/aarch64-gnu-ifunc-nonpreemptable2.s
Commit 1a8d790cf5f89c1df718844f13e934e39bef6ef5 by llvm-dev
[X86] SimplifyDemandedVectorElts - attempt to recombine target shuffle
using DemandedElts mask (reapplied)
If we don't demand all elements, then attempt to combine to a simpler
shuffle.
At the moment we can only do this if Depth == 0 as
combineX86ShufflesRecursively uses Depth to track whether the shuffle
has really changed or not - we'll need to change this before we can
properly start merging combineX86ShufflesRecursively into
SimplifyDemandedVectorElts.
The insertps-combine.ll regression is because
XFormVExtractWithShuffleIntoLoad can't see through shuffles of different
widths - this will be fixed in a follow-up commit.
Reapplying this as rL368307 had to be reverted as part of rL368660 to
revert rL368276
llvm-svn: 368662
The file was modifiedllvm/test/CodeGen/X86/vec_smulo.ll
The file was modifiedllvm/test/CodeGen/X86/insertps-combine.ll
The file was modifiedllvm/test/CodeGen/X86/vec_umulo.ll
The file was modifiedllvm/test/CodeGen/X86/shrink_vmul.ll
The file was modifiedllvm/test/CodeGen/X86/avx512-intrinsics-fast-isel.ll
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.cpp
Commit e7b350a5d11bce823fc3254ab6a084186e15d4f0 by llvm-dev
[X86] XFormVExtractWithShuffleIntoLoad - handle shuffle mask scaling
If the target shuffle mask is from a wider type, attempt to scale the
mask so that the extraction can attempt to peek through.
Fixes the regression mentioned in rL368662
Reapplying this as rL368308 had to be reverted as part of rL368660 to
revert rL368276
llvm-svn: 368663
The file was modifiedllvm/test/CodeGen/X86/insertps-combine.ll
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.cpp
Commit 86dd28a5471480cd7a8cb5ad4801599ac0a0ac20 by Louis Dionne
[libc++] Use [[nodiscard]] for lock_guard, as an extension
Summary: D64914 added support for applying [[nodiscard]] to
constructors. This commit uses that capability to flag incorrect uses of
std::lock_guard where one forgets to actually create a variable for the
lock_guard.
rdar://45790820
Reviewers: mclow.lists, EricWF
Subscribers: christof, jkorous, dexonsmith, libcxx-commits, Quuxplusone,
lebedev.ri
Tags: #libc
Differential Revision: https://reviews.llvm.org/D65900
llvm-svn: 368664
The file was addedlibcxx/test/libcxx/thread/thread.lock/thread.lock.guard/nodiscard.fail.cpp
The file was modifiedlibcxx/test/libcxx/diagnostics/nodiscard_extensions.fail.cpp
The file was modifiedlibcxx/include/__mutex_base
The file was modifiedlibcxx/docs/UsingLibcxx.rst
Commit 01dab0ed9750471ee722fe9d943b66391f8b3c5e by nicolasweber
gn build: Make sync script group output by revision
Differential Revision: https://reviews.llvm.org/D66090
llvm-svn: 368665
The file was modifiedllvm/utils/gn/build/sync_source_lists_from_cmake.py
Commit fa8cb90e6f1f4abfb54cba02109abd10c879c3f8 by Louis Dionne
[libc++] Fix incorrect UNSUPPORTED annotation
The test was marked as UNSUPPORTED for clang-6 and clang-6, instead of
clang-6 and clang-7.
llvm-svn: 368666
The file was modifiedlibcxx/test/libcxx/thread/thread.lock/thread.lock.guard/nodiscard.fail.cpp
Commit d5f873e6a0459cdecf223bffd311dc3badbfdad3 by nicolasweber
gn build: Give cmake sync script an opt-in --write flag
Differential Revision: https://reviews.llvm.org/D66101
llvm-svn: 368667
The file was modifiedllvm/utils/gn/build/sync_source_lists_from_cmake.py
Commit 7ed816badeba39ce4e1c025482969876880f3dfc by nicolasweber
gn build: Merge r368630
llvm-svn: 368668
The file was modifiedllvm/utils/gn/secondary/llvm/unittests/TextAPI/BUILD.gn
Commit 58f03f21286cc408f8bcf03fda1e197f9b6df0fc by nicolasweber
gn build: Extract git() and git_out() functions in sync script
llvm-svn: 368671
The file was modifiedllvm/utils/gn/build/sync_source_lists_from_cmake.py
Commit 5065e7817393d9acf2689d3f666a1c375238a7e2 by Louis Dionne
[pstl] Rename PARALLELSTL_BACKEND to PSTL_PARALLEL_BACKEND
It makes more sense to name configuration options as PSTL_XXX. Also, I'm
naming it PSTL_PARALLEL_BACKEND because we might introduce the ability
to customize the vectorization backend, in which case PSTL_BACKEND would
become ambiguous.
llvm-svn: 368672
The file was modifiedpstl/CMakeLists.txt
The file was modifiedpstl/cmake/ParallelSTLConfig.cmake.in
Commit f8d6836f7a69564193bff27a135f476e1716f5ee by modocache
[CodeGen] Disable UBSan for coroutine functions
Summary: As explained in
http://lists.llvm.org/pipermail/llvm-dev/2018-March/121924.html, the
LLVM coroutines transforms are not yet able to move the instructions for
UBSan null checking past coroutine suspend boundaries. For now, disable
all UBSan checks when generating code for coroutines functions.
I also considered an approach where only '-fsanitize=null' would be
disabled, However in practice this led to other LLVM errors when writing
object files:
"Cannot represent a difference across sections". For now, disable all
UBSan checks until coroutine transforms are updated to handle them.
Test Plan: 1. check-clang 2. Compile the program in
https://gist.github.com/modocache/54a036c3bf9c06882fe85122e105d153
  using the '-fsanitize=null' option and confirm it does not crash
  during LLVM IR generation.
Reviewers: GorNishanov, vsk, eric_niebler, lewissbaker
Reviewed By: vsk
Subscribers: cfe-commits
Tags: #clang
Differential Revision: https://reviews.llvm.org/D44672
llvm-svn: 368675
The file was addedclang/test/CodeGenCXX/ubsan-coroutines.cpp
The file was modifiedclang/lib/CodeGen/CodeGenFunction.cpp
Commit 36f23182bc3126b5841f7e88b8101378cf083b9d by grimar
[llvm-readobj] - Remove 'error(Error EC)' helper.
We do not need it. I replaced it with reportError(StringRef Input, Error
Err).
Differential revision: https://reviews.llvm.org/D66011
llvm-svn: 368677
The file was modifiedllvm/tools/llvm-readobj/COFFDumper.cpp
The file was modifiedllvm/tools/llvm-readobj/ARMEHABIPrinter.h
The file was modifiedllvm/tools/llvm-readobj/Win64EHDumper.cpp
The file was modifiedllvm/tools/llvm-readobj/ELFDumper.cpp
The file was modifiedllvm/tools/llvm-readobj/llvm-readobj.h
The file was modifiedllvm/tools/llvm-readobj/llvm-readobj.cpp
The file was modifiedllvm/test/tools/llvm-readobj/gnu-notes.test
Commit 2515640aee7725c29104ec3a60dae345a3dbdb07 by Raphael Isemann
[lldb][NFC] Add basic IOHandler completion test
We have no test coverage for the IOHandler code that is doing the
completion in the command line. This is adding a pexpect-based test as a
preparation for the switch to using CompletionRequest in the whole
completion machinery.
llvm-svn: 368679
The file was addedlldb/packages/Python/lldbsuite/test/iohandler/completion/TestIOHandlerCompletion.py
The file was addedlldb/packages/Python/lldbsuite/test/iohandler/completion/main.c
Commit 42b957aad7b293eef34ed5c2da7ebde4fab997c9 by yitzhakm
[libTooling] In Transformer, generalize `applyFirst` to admit rules with
incompatible matchers.
Summary: This patch removes an (artificial) limitation of `applyFirst`,
which requires that all of the rules' matchers can be grouped together
in a single `anyOf()`. This change generalizes the code to group the
matchers into separate `anyOf`s based on compatibility. Correspondingly,
`buildMatcher` is changed to
`buildMatchers`, to allow for returning a set of matchers rather than
just one.
Reviewers: gribozavr
Subscribers: cfe-commits
Tags: #clang
Differential Revision: https://reviews.llvm.org/D65877
llvm-svn: 368681
The file was modifiedclang/unittests/Tooling/TransformerTest.cpp
The file was modifiedclang/include/clang/Tooling/Refactoring/Transformer.h
The file was modifiedclang/lib/Tooling/Refactoring/Transformer.cpp
Commit 1b6d6e595b5e27566579c03923667aaab58bd3cd by Louis Dionne
[pstl] Allow customizing whether per-TU insulation is provided
Like we do in libc++, PSTL needs the ability to constrain ABI-unstable
symbols to each translation unit. This is OFF by default (like for
libc++), because most people don't care about this and there is a cost
associated to enabling the option (code bloat because templates are not
deduped across TUs).
I'm using '#pragma clang attribute push' to avoid marking each
declaration with an attribute, which quickly becomes difficult to
maintain.
llvm-svn: 368684
The file was modifiedpstl/include/pstl/internal/glue_algorithm_impl.h
The file was modifiedpstl/include/pstl/internal/utils.h
The file was modifiedpstl/include/pstl/internal/parallel_backend_tbb.h
The file was modifiedpstl/include/pstl/internal/parallel_impl.h
The file was modifiedpstl/include/pstl/internal/glue_memory_impl.h
The file was modifiedpstl/include/pstl/internal/numeric_fwd.h
The file was modifiedpstl/CMakeLists.txt
The file was modifiedpstl/include/pstl/internal/parallel_backend_utils.h
The file was modifiedpstl/include/pstl/internal/algorithm_fwd.h
The file was modifiedpstl/include/pstl/internal/glue_memory_defs.h
The file was modifiedpstl/include/pstl/internal/glue_numeric_impl.h
The file was modifiedpstl/include/pstl/internal/numeric_impl.h
The file was modifiedpstl/include/pstl/internal/glue_algorithm_defs.h
The file was modifiedpstl/include/__pstl_config_site.in
The file was modifiedpstl/include/pstl/internal/algorithm_impl.h
The file was modifiedpstl/include/pstl/internal/glue_numeric_defs.h
The file was modifiedpstl/include/pstl/internal/memory_impl.h
The file was modifiedpstl/include/pstl/internal/unseq_backend_simd.h
The file was modifiedpstl/include/pstl/internal/execution_impl.h
The file was modifiedpstl/include/pstl/internal/pstl_config.h
The file was modifiedpstl/include/pstl/internal/execution_defs.h
The file was modifiedpstl/include/pstl/internal/parallel_backend_serial.h
Commit 2635c324daa6dd01402ee959ed7c74ef7942f2d7 by lebedev.ri
[InstCombine] foldXorOfICmps(): don't give up on non-single-use ICmp's
if all users are freely invertible
Summary: This is rather unconventional..
As the comment there says, we don't have much folds for xor-of-icmps, we
try to turn them into an and-of-icmps, for which we have plenty of
folds. But if the ICmp we need to invert is not single-use - we give up.
As discussed in https://reviews.llvm.org/D65148#1603922, we may have a
non-canonical CLAMP pattern, with bit match and select-of-threshold that
we'll potentially clamp. As it can be seen in
`canonicalize-clamp-with-select-of-constant-threshold-pattern.ll`, out
of all 8 variations of the pattern, only two are **not** canonicalized
into the variant with and+icmp instead of bit math. The reason is
because the ICmp we need to invert is not single-use - we give up.
We indeed can't perform this fold at will, the general rule is that we
should not increase instruction count in InstCombine,
But we wouldn't end up increasing instruction count if we can adapt
every other user to the inverted value. This way the `not` we create
**will** get folded, and in the end the instruction count did not
increase.
For that, of course, we need to look at the users of a Value, which is
again rather unconventional for InstCombine :S
Thus i'm proposing to be a little bit more insistive in
`foldXorOfICmps()`. The alternatives would be to not create that `not`,
but add duplicate code to manually invert all users; or to add some even
less general combine to handle some more specific pattern[s].
Reviewers: spatel, nikic, RKSimon, craig.topper
Reviewed By: spatel
Subscribers: hiraditya, jdoerfert, dmgreen, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D65530
llvm-svn: 368685
The file was modifiedllvm/lib/Transforms/InstCombine/InstCombineInternal.h
The file was modifiedllvm/test/Transforms/InstCombine/canonicalize-clamp-with-select-of-constant-threshold-pattern.ll
The file was modifiedllvm/test/Transforms/InstCombine/xor-of-icmps-with-extra-uses.ll
The file was modifiedllvm/lib/Transforms/InstCombine/InstCombineAndOrXor.cpp
Commit 0410489a34be7f82775b3ff5bbc00df29bdf5864 by lebedev.ri
[InstCombine][NFC] Rename IsFreeToInvert() -> isFreeToInvert() for
consistency
As per https://reviews.llvm.org/D65530#inline-592325
llvm-svn: 368686
The file was modifiedllvm/lib/Transforms/InstCombine/InstCombineAndOrXor.cpp
The file was modifiedllvm/lib/Transforms/InstCombine/InstCombineInternal.h
The file was modifiedllvm/lib/Transforms/InstCombine/InstCombineSelect.cpp
The file was modifiedllvm/lib/Transforms/InstCombine/InstCombineAddSub.cpp
Commit 73f702ff192475b27039325a7428ce037771a5de by lebedev.ri
[InstCombine] Non-canonical clamp-like pattern handling
Summary: Given a pattern like:
```
%old_cmp1 = icmp slt i32 %x, C2
%old_replacement = select i1 %old_cmp1, i32 %target_low, i32
%target_high
%old_x_offseted = add i32 %x, C1
%old_cmp0 = icmp ult i32 %old_x_offseted, C0
%r = select i1 %old_cmp0, i32 %x, i32 %old_replacement
``` it can be rewritten as more canonical pattern:
```
%new_cmp1 = icmp slt i32 %x, -C1
%new_cmp2 = icmp sge i32 %x, C0-C1
%new_clamped_low = select i1 %new_cmp1, i32 %target_low, i32 %x
%r = select i1 %new_cmp2, i32 %target_high, i32 %new_clamped_low
``` Iff `-C1 s<= C2 s<= C0-C1` Also, `ULT` predicate can also be `UGE`;
or `UGT` iff `C0 != -1` (+invert result) Also, `SLT` predicate can also
be `SGE`; or `SGT` iff `C2 != INT_MAX` (+invert result)
If `C1 == 0`, then all 3 instructions must be one-use; else at most
either `%old_cmp1` or `%old_x_offseted` can have extra uses. NOTE: if we
could reuse `%old_cmp1` as one of the comparisons we'll have to build,
this could be less limiting.
So there are two icmp's, each one with 3 predicate variants, so there
are 9 fold variants:
|     | ULT                            | UGE                           
| UGT                             |
| SLT | https://rise4fun.com/Alive/yIJ | https://rise4fun.com/Alive/5BfN
| https://rise4fun.com/Alive/INH  |
| SGE | https://rise4fun.com/Alive/hd8 | https://rise4fun.com/Alive/Abk
| https://rise4fun.com/Alive/PlzS |
| SGT | https://rise4fun.com/Alive/VYG | https://rise4fun.com/Alive/oMY
| https://rise4fun.com/Alive/KrzC |
{F9730206}
This fold was brought up in https://reviews.llvm.org/D65148#1603922 by
@dmgreen, and is needed to unblock that patch. This patch requires
D65530.
Reviewers: spatel, nikic, xbolva00, dmgreen
Reviewed By: spatel
Subscribers: hiraditya, llvm-commits, dmgreen
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D65765
llvm-svn: 368687
The file was modifiedllvm/test/Transforms/InstCombine/canonicalize-clamp-like-pattern-between-negative-and-positive-thresholds.ll
The file was modifiedllvm/lib/Transforms/InstCombine/InstCombineSelect.cpp
The file was modifiedllvm/test/Transforms/InstCombine/canonicalize-clamp-with-select-of-constant-threshold-pattern.ll
The file was modifiedllvm/test/Transforms/InstCombine/canonicalize-clamp-like-pattern-between-zero-and-positive-threshold.ll
Commit 7f7b2966f7be82a33543808ae33269199798429b by Raphael Isemann
[lldb] Reland "Refactor guard variable checks in IRForTarget"
It seems the broken guard variable check for Windows was a feature(TM)
and not a bug, so let's keep add a flag to the guard check that keeps
the old behavior in the places where we ignored guard variables before.
llvm-svn: 368688
The file was modifiedlldb/source/Plugins/ExpressionParser/Clang/IRForTarget.cpp
Commit b9bd6ebe1dca7978b86f27c583e5b471b447108b by dkszelethus
[analyzer][NFC] Refactoring BugReporter.cpp P1.: Store interesting
symbols/regions in a simple set
The goal of this refactoring effort was to better understand how
interestingness was propagated in BugReporter.cpp, which eventually
turned out to be a dead end, but with such a twist, I wouldn't even want
to spoil it ahead of time. However, I did get to learn a lot about how
things are working in there.
In these series of patches, as well as cleaning up the code big time, I
invite you to study how BugReporter.cpp operates, and discuss how we
could design this file to reduce the horrible mess that it is.
This patch reverts a great part of rC162028, which holds the title
"Allow multiple PathDiagnosticConsumers to be used with a BugReporter at
the same time.". This, however doesn't imply that there's any need for
multiple "layers" or stacks of interesting symbols and regions, quite
the contrary, I would argue that we would like to generate the same
amount of information for all output types, and only process them
differently.
Differential Revision: https://reviews.llvm.org/D65378
llvm-svn: 368689
The file was modifiedclang/include/clang/StaticAnalyzer/Core/BugReporter/BugReporter.h
The file was modifiedclang/lib/StaticAnalyzer/Core/BugReporter.cpp
Commit f635e28df8d0737ec4c05aaca7bcbbbc7e47dba3 by hubert.reinterpretcast
[AIX][test/Index] Set/propagate AIXTHREAD_STK for AIX
Summary: Some tests perform deep recursion, which requires a larger
pthread stack size than the relatively low default of 192 KiB for 64-bit
processes on AIX. The `AIXTHREAD_STK` environment variable provides a
non-intrusive way to request a larger pthread stack size for the tests.
The required pthread stack size depends on the build configuration.
A 4 MiB default is generous compared to the 512 KiB of macOS; however,
it is known that some compilers on AIX produce code that uses
comparatively more stack space.
Reviewers: xingxue, daltenty, jasonliu
Reviewed By: daltenty
Subscribers: arphaman, jfb, cfe-commits
Tags: #clang
Differential Revision: https://reviews.llvm.org/D65688
llvm-svn: 368690
The file was addedclang/test/Index/lit.local.cfg
Commit 8f1db0cd08d0194d4b7e5a9a86f96efe710ba087 by hubert.reinterpretcast
[AIX] Implement LR prolog/epilog save/restore
Summary: This patch fixes the offsets of fields in the stack frame
linkage save area for AIX.
Reviewers: sfertile, hubert.reinterpretcast, jasonliu, Xiangling_L,
xingxue, ZarkoCA, daltenty
Reviewed By: hubert.reinterpretcast
Subscribers: wuzish, nemanjai, hiraditya, kbarton, MaskRay, jsji,
llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D64424
Patch by Chris Bowler!
llvm-svn: 368691
The file was addedllvm/test/CodeGen/PowerPC/aix-lr.ll
Commit 202d660af100f7e8560a791ea98cea781b577dfa by llvm-dev
Fix -Wdocumentation typo. NFCI.
llvm-svn: 368692
The file was modifiedclang/include/clang/CrossTU/CrossTranslationUnit.h
Commit bda73ae0bbb0d8a11c5e4b58dd1461748f8f54dd by llvm-dev
Fix -Wdocumentation warning (@returns used in void function). NFCI.
llvm-svn: 368693
The file was modifiedllvm/tools/llvm-reduce/deltas/ReduceFunctions.cpp
Commit ed9cc4079452e827c8cd0f6d4f18d1bbc3258f03 by dkszelethus
[analyzer][NFC] Refactoring BugReporter.cpp P2.: Clean up the
construction of bug paths and finding a valid report
This patch refactors the utility functions and classes around the
construction of a bug path.
At a very high level, this consists of 3 steps:
* For all BugReports in the same BugReportEquivClass, collect all their
error nodes in a set. With that set, create a new, trimmed ExplodedGraph
whose leafs are all error nodes.
* Until a valid report is found, construct a bug path, which is yet
another ExplodedGraph, that is linear from a given error node to the
root of the graph.
* Run all visitors on the constructed bug path. If in this process the
report got invalidated, start over from step 2.
Now, to the changes within this patch:
* Do not allow the invalidation of BugReports up to the point where the
trimmed graph is constructed. Checkers shouldn't add bug reports that
are known to be invalid, and should use visitors and argue about the
entirety of the bug path if needed.
* Do not calculate indices. I may be biased, but I personally find code
like this horrible. I'd like to point you to one of the comments in the
original code:
SmallVector<const ExplodedNode *, 32> errorNodes; for (const auto I :
bugReports) {
if (I->isValid()) {
   HasValid = true;
   errorNodes.push_back(I->getErrorNode());
} else {
   // Keep the errorNodes list in sync with the bugReports list.
   errorNodes.push_back(nullptr);
}
}
Not on my watch. Instead, use a far easier to follow trick: store a
pointer to the BugReport in question, not an index to it.
* Add range iterators to ExplodedGraph's successors and predecessors,
and a visitor range to BugReporter.
* Rename TrimmedGraph to BugPathGetter. Because that is what it has
always been: no sane graph type should store an iterator-like state, or
have an interface not exposing a single graph-like functionalities.
* Rename ReportGraph to BugPathInfo, because it is only a linear path
with some other context.
* Instead of having both and out and in parameter (which I think isn't
ever excusable unless we use the out-param for caching), return a record
object with descriptive getter methods.
* Where descriptive names weren't sufficient, compliment the code with
comments.
Differential Revision: https://reviews.llvm.org/D65379
llvm-svn: 368694
The file was modifiedclang/include/clang/StaticAnalyzer/Core/PathSensitive/ExplodedGraph.h
The file was modifiedclang/lib/StaticAnalyzer/Core/BugReporter.cpp
The file was modifiedclang/include/clang/StaticAnalyzer/Core/BugReporter/BugReporter.h
Commit a23b25031e48d03868095f22a5fd7af20870ccbd by Raphael Isemann
[lldb] Fix Microsoft guard variable detection
Apparently we need to check for a suffix, not a prefix. This broke
probably broke expression evaluation on Windows.
llvm-svn: 368695
The file was modifiedlldb/source/Plugins/ExpressionParser/Clang/IRForTarget.cpp
Commit 5b25674b73070f3f882d69737da1a84ac23963f0 by momchil.velikov
[AArch64] Make the memtag sanitizer require the memtag extension
... or otherwise we get an ICE.
Differential Revision: https://reviews.llvm.org/D65508
llvm-svn: 368696
The file was modifiedclang/include/clang/Basic/DiagnosticDriverKinds.td
The file was modifiedclang/lib/Driver/SanitizerArgs.cpp
The file was modifiedclang/test/Driver/fsanitize.c
Commit 941660299ac6d30919af9d943794a2ac516112fc by momchil.velikov
Enable memtag sanitizer in all AArch64 toolchains
That sanitizer does not have runtime library or other dependencies.
Differential Revision: https://reviews.llvm.org/D65642
llvm-svn: 368697
The file was modifiedclang/lib/Driver/ToolChains/Linux.cpp
The file was modifiedclang/lib/Driver/ToolChain.cpp
Commit 63ac3e5cbe0394ae3cf563f0d13f71ca07b129cf by rupprecht
[llvm-readelf] Implement note parsing for NT_FILE and unknown
descriptors
Summary: This patch implements two note parsers; one for NT_FILE
coredumps, e.g.:
```
CORE                  0x00000080      NT_FILE (mapped files)
   Page size: 4096
                Start                 End         Page Offset
   0x0000000000001000  0x0000000000002000  0x0000000000003000
       /path/to/a.out
   0x0000000000004000  0x0000000000005000  0x0000000000006000
       /path/to/libc.so
   0x0000000000007000  0x0000000000008000  0x0000000000009000
       [stack]
```
(A more realistic example can be tested locally by creating a crashing
program and running `llvm-readelf -n core`)
And also implements a raw hex dump for unknown descriptor data for
unhandled descriptor types.
Reviewers: MaskRay, jhenderson, grimar, alexshap
Reviewed By: MaskRay, grimar
Subscribers: emaste, llvm-commits, labath
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D65832
llvm-svn: 368698
The file was modifiedllvm/test/tools/llvm-readobj/note-amd.s
The file was modifiedllvm/test/tools/llvm-readobj/note-unknown.s
The file was modifiedllvm/tools/llvm-readobj/ELFDumper.cpp
The file was modifiedllvm/test/tools/llvm-readobj/note-freebsd.s
The file was addedllvm/test/tools/llvm-readobj/note-core-ntfile-bad.test
The file was addedllvm/test/tools/llvm-readobj/note-core-ntfile.test
Commit 07e66137561fc7def181fe098d61e71b59267d26 by hubert.reinterpretcast
Revert r368691; test checked in without changes by accident
llvm-svn: 368699
The file was removedllvm/test/CodeGen/PowerPC/aix-lr.ll
Commit 1896a31dd33147d6bd798b5b209ec74e50b27783 by yitzhakm
[clang-tidy] Update `TransformerClangTidyCheck` to use new
`buildMatchers` functionality.
Summary:
`buildMatchers` is the new, more general way to extract the matcher from
a rule. This change migrates the code to use it instead of
`buildMatcher`.
Reviewers: gribozavr
Subscribers: xazax.hun, cfe-commits
Tags: #clang
Differential Revision: https://reviews.llvm.org/D65879
llvm-svn: 368700
The file was modifiedclang-tools-extra/clang-tidy/utils/TransformerClangTidyCheck.cpp
Commit f4de7eda4a7098ea3a5d60c56af8ab8e9d28ff08 by lebedev.ri
[TargetLowering][NFC] prepareUREMEqFold(): fixup comment
The comment initially matched the code, but the code was incorrect and
was fixed after the initial revert back back when it was introduced, but
the comment was never updated.
llvm-svn: 368701
The file was modifiedllvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
Commit 676594305a16bb085b8dfa24a5adbb5e97be6d69 by lebedev.ri
[CodeGen][SelectionDAG] More efficient code for X % C == 0 (SREM case)
Summary: This implements an optimization described in Hacker's Delight
10-17: when `C` is constant, the result of `X % C == 0` can be computed
more cheaply without actually calculating the remainder. The motivation
is discussed here: https://bugs.llvm.org/show_bug.cgi?id=35479.
One huge caveat: this signed case is only valid for positive divisors.
While we can freely negate negative divisors, we can't negate `INT_MIN`,
so for now if `INT_MIN` is encountered, we bailout. As a follow-up, it
should be possible to handle that more gracefully via extra
`and`+`setcc`+`select`.
This passes llvm's test-suite, and from cursory(!) cross-examination the
folds (the assembly) match those of GCC, and manual checking via alive
did not reveal any issues (other than the `INT_MIN` case)
Reviewers: RKSimon, spatel, hermord, craig.topper, xbolva00
Reviewed By: RKSimon, xbolva00
Subscribers: xbolva00, thakis, javed.absar, hiraditya, dexonsmith,
llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D65366
llvm-svn: 368702
The file was modifiedllvm/test/CodeGen/AArch64/srem-seteq.ll
The file was modifiedllvm/include/llvm/CodeGen/TargetLowering.h
The file was modifiedllvm/test/CodeGen/X86/srem-seteq-vec-nonsplat.ll
The file was modifiedllvm/test/CodeGen/X86/vselect-avx.ll
The file was modifiedllvm/test/CodeGen/AArch64/srem-seteq-optsize.ll
The file was modifiedllvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
The file was modifiedllvm/test/CodeGen/AArch64/srem-seteq-vec-splat.ll
The file was modifiedllvm/test/CodeGen/AArch64/srem-seteq-vec-nonsplat.ll
The file was modifiedllvm/test/CodeGen/X86/srem-seteq.ll
The file was modifiedllvm/test/CodeGen/X86/srem-seteq-optsize.ll
The file was modifiedllvm/test/CodeGen/X86/srem-seteq-vec-splat.ll
Commit 8a033a9e3fb96b9a1099325c4cd218c1c979d9d9 by Louis Dionne
[libc++] Always build with -fvisibility=hidden
Summary: This avoids symbols being accidentally exported from the dylib
when they shouldn't. The next step is to use a pragma to apply hidden
visibility to all declarations (unless otherwise specified), which will
allow us to drop the per-declaration hidden visibility attributes we
currently have.
This also has the nice side effect of making sure the dylib exports the
same symbols regardless of the optimization level.
PR38138
Reviewers: EricWF, mclow.lists
Subscribers: mgorny, christof, jkorous, dexonsmith, libcxx-commits
Tags: #libc
Differential Revision: https://reviews.llvm.org/D62868
llvm-svn: 368703
The file was modifiedlibcxx/src/valarray.cpp
The file was modifiedlibcxx/src/CMakeLists.txt
The file was modifiedlibcxx/include/filesystem
The file was modifiedlibcxx/include/chrono
Commit 5af9cf042f21d6b044f8925b581a8f089d739bc5 by Matthew.Arsenault
GlobalISel: Change representation of shuffle masks
Currently shufflemasks get emitted as any other constant, and you end up
with a bunch of virtual registers of G_CONSTANT with a G_BUILD_VECTOR.
The AArch64 selector then asserts on anything that doesn't fit this
pattern. This isn't an ideal representation, and should avoid
legalization and have fewer opportunities for a representational error.
Rather than invent a new shuffle mask operand type, similar to what
ShuffleVectorSDNode does, just track the original IR Constant mask
operand. I don't completely like the idea of adding another link to the
IR, but MIR is already quite dependent on IR constants already, and this
will allow sharing the shuffle mask utility functions with the IR.
llvm-svn: 368704
The file was addedllvm/test/CodeGen/MIR/AArch64/parse-shufflemask-invalid2.mir
The file was addedllvm/test/CodeGen/MIR/AArch64/parse-shufflemask.mir
The file was modifiedllvm/lib/CodeGen/MIRParser/MIParser.cpp
The file was addedllvm/test/CodeGen/MIR/AArch64/parse-shufflemask-invalid1.mir
The file was modifiedllvm/lib/CodeGen/MIRParser/MILexer.h
The file was modifiedllvm/lib/Target/ARM/ARMExpandPseudoInsts.cpp
The file was modifiedllvm/test/CodeGen/AArch64/GlobalISel/legalize-shuffle-vector.mir
The file was modifiedllvm/lib/CodeGen/GlobalISel/IRTranslator.cpp
The file was modifiedllvm/test/CodeGen/AArch64/GlobalISel/select-shuffle-vector.mir
The file was modifiedllvm/test/CodeGen/ARM/GlobalISel/arm-irtranslator.ll
The file was addedllvm/test/CodeGen/MIR/AArch64/parse-shufflemask-invalid3.mir
The file was modifiedllvm/include/llvm/CodeGen/MachineInstrBuilder.h
The file was modifiedllvm/test/CodeGen/AArch64/GlobalISel/opt-shuffle-splat.mir
The file was modifiedllvm/lib/CodeGen/MIRPrinter.cpp
The file was modifiedllvm/include/llvm/CodeGen/MachineOperand.h
The file was modifiedllvm/test/CodeGen/AArch64/GlobalISel/select-shufflevec-undef-mask-elt.mir
The file was modifiedllvm/lib/CodeGen/MIRParser/MILexer.cpp
The file was modifiedllvm/lib/Target/AArch64/AArch64InstructionSelector.cpp
The file was addedllvm/test/CodeGen/MIR/AArch64/parse-shufflemask-invalid0.mir
The file was addedllvm/test/MachineVerifier/test_g_shuffle_vector.mir
The file was modifiedllvm/lib/CodeGen/MachineOperand.cpp
The file was modifiedllvm/include/llvm/Target/GenericOpcodes.td
The file was modifiedllvm/lib/CodeGen/MachineVerifier.cpp
The file was modifiedllvm/test/CodeGen/AArch64/GlobalISel/arm64-irtranslator.ll
The file was modifiedllvm/test/CodeGen/AArch64/GlobalISel/legalizer-info-validation.mir
Commit 0a04a062500e2c6d5b92b59c545db3f45e9daffe by Matthew.Arsenault
GlobalISel: Add more verifier checks for G_SHUFFLE_VECTOR
llvm-svn: 368705
The file was modifiedllvm/test/CodeGen/MIR/AArch64/parse-shufflemask.mir
The file was modifiedllvm/test/CodeGen/ARM/GlobalISel/arm-irtranslator.ll
The file was modifiedllvm/test/MachineVerifier/test_g_shuffle_vector.mir
The file was modifiedllvm/lib/CodeGen/MachineVerifier.cpp
Commit 76945821b9cad3baebad5c36ae00ab173f8529c6 by elizabeth.andrews
Fix crash on switch conditions of non-integer types in templates
Clang currently crashes for switch statements inside a template when the
condition is a non-integer field. The crash is due to incorrect
type-dependency of field. Type-dependency of member expressions is
currently set based on the containing class. This patch changes this for
'members of the current instantiation' to set the type dependency based
on the member's type instead.
A few lit tests started to fail once I applied this patch because errors
are now diagnosed earlier (does not wait till instantiation). I've
modified these tests in this patch as well.
Patch fixes PR#40982
Differential Revision: https://reviews.llvm.org/D61027
llvm-svn: 368706
The file was addedclang/test/SemaTemplate/non-integral-switch-cond.cpp
The file was modifiedclang/lib/Sema/SemaChecking.cpp
The file was modifiedclang/test/SemaTemplate/dependent-names.cpp
The file was modifiedclang/test/SemaTemplate/member-access-expr.cpp
The file was modifiedclang/lib/AST/Expr.cpp
The file was modifiedclang/test/SemaTemplate/enum-argument.cpp
Commit 52a34a78d9aff1bb5e66e7c32490229ea177e075 by Lang Hames
[ORC] Refactor definition-generation, add a generator for static
libraries.
This patch replaces the JITDylib::DefinitionGenerator typedef with a
class of the same name, and adds support for attaching a sequence of
DefinitionGeneration objects to a JITDylib.
This patch also adds a new definition generator,
StaticLibraryDefinitionGenerator, that can be used to add symbols fom a
static library to a JITDylib. An object from the static library will be
added (via a supplied ObjectLayer reference) whenever a symbol from that
object is referenced.
To enable testing, lli is updated to add support for the --extra-archive
option when running in -jit-kind=orc-lazy mode.
llvm-svn: 368707
The file was modifiedllvm/include/llvm/ExecutionEngine/Orc/Core.h
The file was modifiedllvm/include/llvm/ExecutionEngine/Orc/ExecutionUtils.h
The file was modifiedllvm/lib/ExecutionEngine/Orc/Core.cpp
The file was addedllvm/test/ExecutionEngine/OrcLazy/static-library-support.ll
The file was modifiedllvm/tools/lli/lli.cpp
The file was modifiedllvm/unittests/ExecutionEngine/Orc/CoreAPIsTest.cpp
The file was modifiedllvm/tools/llvm-jitlink/llvm-jitlink.cpp
The file was modifiedllvm/lib/ExecutionEngine/Orc/ExecutionUtils.cpp
Commit 690645bda08835abd0263f4e81113a31b3a9c52b by Matthew.Arsenault
GlobalISel: Implement lower for G_SHUFFLE_VECTOR
llvm-svn: 368709
The file was modifiedllvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp
The file was addedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-shuffle-vector.mir
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp
The file was modifiedllvm/include/llvm/CodeGen/GlobalISel/LegalizerHelper.h
Commit 7859641626f8125c0b8e0c2823745edfbe0aa27f by rupprecht
[lld][test] Update test to print ELF note description data
llvm-svn: 368710
The file was modifiedlld/test/ELF/partition-notes.s
Commit f990e4a4c7bcc3c3dec6ee8ffac39cc0a27e521a by momchil.velikov
[ARM] Fix encoding of APSR in CLRM instruction
The APSR is encoded by setting bit 15 in the register list of the CLRM
instruction (cf.
https://static.docs.arm.com/ddi0553/bh/DDI0553B_h_armv8m_arm.pdf).
Differential Revision: https://reviews.llvm.org/D65873
llvm-svn: 368711
The file was modifiedllvm/test/MC/ARM/clrm-asm.s
The file was modifiedllvm/lib/Target/ARM/ARMRegisterInfo.td
The file was modifiedllvm/lib/Target/ARM/MCTargetDesc/ARMMCCodeEmitter.cpp
Commit 114c37e72a5f01f49761b42b3ff45334ed863a81 by momchil.velikov
[ARM] Fix detection of duplicates when parsing reg list operands
Differential Revision: https://reviews.llvm.org/D65957
llvm-svn: 368712
The file was modifiedllvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
The file was addedllvm/test/MC/ARM/register-list-dup.s
Commit 28215caa60a40dcbee5666c319f251afce86fa72 by Matthew.Arsenault
GlobalISel: Partially implement fewerElementsVector G_UNMERGE_VALUES
Odd sized vectors aren't handled yet.
llvm-svn: 368713
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-smin.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-lshr.mir
The file was modifiedllvm/include/llvm/CodeGen/GlobalISel/LegalizerHelper.h
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-sext.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-fsub.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-fsqrt.mir
The file was modifiedllvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-fadd.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-fcanonicalize.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-umin.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-fminnum.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-phi.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-shl.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-smax.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-fmul.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-zext.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-fabs.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-fma.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-fneg.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-fmaxnum.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-umax.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-fpext.mir
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-unmerge-values.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-ashr.mir
Commit 90a30fdcc39ebbee04b3d426ea0496179eddc494 by david.bolvansky
[SLC] Improve dereferenceable bytes annotation
llvm-svn: 368715
The file was modifiedllvm/lib/Transforms/Utils/SimplifyLibCalls.cpp
The file was modifiedllvm/test/Transforms/InstCombine/mem-deref-bytes.ll
Commit e842314e768b6cf22e61c57d02c36616a76469ca by llvm-dev
[X86] Add some vXi8 extract subvector cost model tests
We don't have full 512-bit test coverage yet - but there's enough to
help test D65892
llvm-svn: 368716
The file was modifiedllvm/test/Analysis/CostModel/X86/shuffle-extract_subvector.ll
Commit 6d716ef1814bea126dcdb761eb2482abb9c44f39 by dkszelethus
[analyzer][NFC] Refactoring BugReporter.cpp P3.:
std::shared_pointer<PathDiagnosticPiece> -> PathDiagnosticPieceRef
find clang/ -type f -exec sed -i
's/std::shared_ptr<PathDiagnosticPiece>/PathDiagnosticPieceRef/g' {} \;
git diff -U3 --no-color HEAD^ | clang-format-diff-6.0 -p1 -i
Just as C++ is meant to be refactored, right?
Differential Revision: https://reviews.llvm.org/D65381
llvm-svn: 368717
The file was modifiedclang/lib/StaticAnalyzer/Checkers/LocalizationChecker.cpp
The file was modifiedclang/lib/StaticAnalyzer/Checkers/MPI-Checker/MPIBugReporter.cpp
The file was modifiedclang/lib/StaticAnalyzer/Checkers/MallocChecker.cpp
The file was modifiedclang/lib/StaticAnalyzer/Checkers/ValistChecker.cpp
The file was modifiedclang/lib/StaticAnalyzer/Checkers/MacOSKeychainAPIChecker.cpp
The file was modifiedclang/lib/StaticAnalyzer/Checkers/TestAfterDivZeroChecker.cpp
The file was modifiedclang/lib/StaticAnalyzer/Checkers/NullabilityChecker.cpp
The file was modifiedclang/lib/StaticAnalyzer/Checkers/RetainCountChecker/RetainCountDiagnostics.cpp
The file was modifiedclang/lib/StaticAnalyzer/Checkers/DynamicTypeChecker.cpp
The file was modifiedclang/lib/StaticAnalyzer/Checkers/MoveChecker.cpp
The file was modifiedclang/include/clang/StaticAnalyzer/Core/BugReporter/PathDiagnostic.h
The file was modifiedclang/lib/StaticAnalyzer/Checkers/DeleteWithNonVirtualDtorChecker.cpp
The file was modifiedclang/lib/StaticAnalyzer/Checkers/ObjCSuperDeallocChecker.cpp
The file was modifiedclang/lib/StaticAnalyzer/Core/PlistDiagnostics.cpp
The file was modifiedclang/lib/StaticAnalyzer/Checkers/DynamicTypePropagation.cpp
The file was modifiedclang/lib/StaticAnalyzer/Checkers/Taint.h
The file was modifiedclang/lib/StaticAnalyzer/Checkers/InnerPointerChecker.cpp
The file was modifiedclang/lib/StaticAnalyzer/Core/HTMLDiagnostics.cpp
The file was modifiedclang/lib/StaticAnalyzer/Checkers/MPI-Checker/MPIBugReporter.h
The file was modifiedclang/lib/StaticAnalyzer/Checkers/Taint.cpp
The file was modifiedclang/lib/StaticAnalyzer/Checkers/VirtualCallChecker.cpp
The file was modifiedclang/lib/StaticAnalyzer/Core/BugReporter.cpp
The file was modifiedclang/lib/StaticAnalyzer/Core/BugReporterVisitors.cpp
The file was modifiedclang/include/clang/StaticAnalyzer/Core/BugReporter/BugReporterVisitors.h
Commit 57ae300562f826e3fee81017d6473a5dec516383 by Jonas Devlieghere
[Dwarf] Complete the list of type tags.
An incorrect verification error revealed that the list of type tags was
incomplete. This patch adds the missing types by adding a tag kind to
the Dwarf.def file, which is used by the `isType` function.
A test was added for the original verification error.
Differential revision: https://reviews.llvm.org/D65914
llvm-svn: 368718
The file was modifiedllvm/include/llvm/ObjectYAML/DWARFYAML.h
The file was modifiedllvm/include/llvm/BinaryFormat/Dwarf.def
The file was modifiedllvm/lib/BinaryFormat/Dwarf.cpp
The file was modifiedllvm/include/llvm/BinaryFormat/Dwarf.h
The file was modifiedllvm/test/DebugInfo/X86/template.ll
Commit 7185a7301e860a2c7c35a2013ac27f6a8673f067 by sbc
[lld][WebAssembly] Allow linking of pic code into static binaries
Summary: See https://github.com/emscripten-core/emscripten/issues/9013
Subscribers: dschuff, jgravelle-google, aheejin, sunfish, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D65922
llvm-svn: 368719
The file was modifiedlld/wasm/Writer.cpp
The file was addedlld/test/wasm/pic-static.ll
The file was modifiedlld/wasm/Driver.cpp
The file was modifiedlld/wasm/Symbols.cpp
The file was modifiedlld/wasm/Relocations.cpp
The file was modifiedlld/wasm/Symbols.h
The file was modifiedlld/wasm/SyntheticSections.cpp
The file was modifiedlld/wasm/SyntheticSections.h
Commit 9bf01e53a39f9b5b0b20fa2e425cf859c1f92ea8 by daltenty
[NFC][AIX] Use assert instead of llvm_unreachable
Addresses post-commit comments on https://reviews.llvm.org/D64825. Use
assert instead of llvm_unreachable to check if invalid csect types are
being generated. Use report_fatal_error on unimplemented XCOFF features.
Differential Revision: https://reviews.llvm.org/D64825
llvm-svn: 368720
The file was modifiedllvm/lib/MC/MCAsmStreamer.cpp
The file was modifiedllvm/lib/MC/MCXCOFFStreamer.cpp
The file was modifiedllvm/include/llvm/MC/MCStreamer.h
The file was modifiedllvm/lib/MC/MCSectionXCOFF.cpp
Commit 09967050098ea75a3b331c1d6ab21df7b2e2b4df by hubert.reinterpretcast
Reland r368691: "[AIX] Implement LR prolog/epilog save/restore"
Trying again with the code changes (and not just the new test).
Summary: This patch fixes the offsets of fields in the stack frame
linkage save area for AIX.
Reviewers: sfertile, hubert.reinterpretcast, jasonliu, Xiangling_L,
xingxue, ZarkoCA, daltenty
Reviewed By: hubert.reinterpretcast
Subscribers: wuzish, nemanjai, hiraditya, kbarton, MaskRay, jsji,
llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D64424
Patch by Chris Bowler!
llvm-svn: 368721
The file was modifiedllvm/lib/Target/PowerPC/PPCFrameLowering.cpp
The file was modifiedllvm/test/CodeGen/PowerPC/test_call_aix.ll
The file was modifiedllvm/lib/Target/PowerPC/PPCFrameLowering.h
The file was addedllvm/test/CodeGen/PowerPC/aix-lr.ll
Commit dde10cd7a968e57598726347b323348eceffeb05 by david.bolvansky
[NFC] Revisited/updated tests
llvm-svn: 368722
The file was modifiedllvm/test/Transforms/InstCombine/mem-deref-bytes.ll
Commit 2a4f26b4c28aaf9307e690b2f743ffcde5183b9e by nikita.ppv
[ValueTracking] Improve reverse assumption inference
Use isGuaranteedToTransferExecutionToSuccessor() instead of
isSafeToSpeculativelyExecute() when seeing whether we can propagate the
information in an assume backwards in isValidAssumeForContext(). The
latter is more general - it also allows arbitrary loads/stores - and is
also the condition we want: if our assume is guaranteed to execute, its
condition not holding would be UB.
Original patch by arielb1.
Differential Revision: https://reviews.llvm.org/D37215
llvm-svn: 368723
The file was modifiedllvm/lib/Analysis/ValueTracking.cpp
The file was modifiedllvm/test/Transforms/InstCombine/assume_inevitable.ll
Commit 038d604f4f8c0f02ef8b6e8740f1a6fc1538c193 by david.bolvansky
[SimplifyLibCalls] Add noalias from known callsites
Summary: Should be fine for memcpy, strcpy, strncpy.
Reviewers: jdoerfert, efriedma
Reviewed By: jdoerfert
Subscribers: uenoku, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D66135
llvm-svn: 368724
The file was modifiedllvm/test/Transforms/InstCombine/objsize.ll
The file was modifiedllvm/test/Analysis/TypeBasedAliasAnalysis/memcpyopt.ll
The file was modifiedllvm/test/Transforms/InstCombine/memcpy.ll
The file was modifiedllvm/test/Transforms/InstCombine/memmove.ll
The file was modifiedllvm/test/Transforms/InstCombine/strncpy_chk-1.ll
The file was modifiedllvm/test/Transforms/MemCpyOpt/memcpy-to-memset-with-lifetimes.ll
The file was modifiedllvm/lib/Transforms/Utils/SimplifyLibCalls.cpp
The file was modifiedllvm/test/Transforms/InstCombine/strcpy_chk-1.ll
The file was modifiedllvm/test/Transforms/InstCombine/sprintf-1.ll
The file was modifiedllvm/test/Transforms/InstCombine/stpcpy_chk-1.ll
The file was modifiedllvm/test/Transforms/InstCombine/memcpy-1.ll
The file was modifiedllvm/test/Transforms/InstCombine/mem-deref-bytes.ll
The file was addedllvm/test/Transforms/InstCombine/annotate-noalias.ll
The file was modifiedllvm/test/Transforms/InstCombine/memcpy-from-global.ll
The file was modifiedllvm/test/Transforms/InstCombine/memcpy-to-load.ll
The file was modifiedllvm/test/Transforms/InstCombine/memcpy_chk-1.ll
Commit 97c35c9f57cff622bbb52dba7e05b1e1ce29961a by david.bolvansky
[NFC] Updated tests after r368724
llvm-svn: 368725
The file was modifiedclang/test/CodeGen/tbaa-struct.cpp
Commit 39bce250d25b766f9e19f7858caf1704bef9abcc by rupprecht
[util] Allow callsigns when running git llvm revert
llvm-svn: 368726
The file was modifiedllvm/utils/git-svn/git-llvm
Commit 64517a6419ca7f7b4f349f512c7cc65c30dae2bf by aheejin
Use Register over unsigned in LateEHPrepare (NFC)
Summary: While D65962 is pending for review, I landed D65475 that added
one more use of `unsigned`. Changed it to `Register`.
Reviewers: dsanders
Subscribers: dschuff, sbc100, jgravelle-google, hiraditya, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D66064
llvm-svn: 368727
The file was modifiedllvm/lib/Target/WebAssembly/WebAssemblyLateEHPrepare.cpp
Commit 2346b92f2bff05ef9d83706787bd38e32e0079c5 by nicolasweber
clang: Don't warn on unused momit-leaf-frame-pointer when frame pointers
are off.
This fixes a regression from r365860: As that commit message states,
there are 3 valid states targeted by the combination of
-f(no-)omit-frame-pointer and -m(no-)omit-leaf-frame-pointer.
After r365860 it's impossible to get from state 10 (omit just leaf frame
pointers) to state 11 (omit all frame pointers) in a single command line
without getting a warning.
This change restores that functionality.
Fixes PR42966.
Differential Revision: https://reviews.llvm.org/D66142
llvm-svn: 368728
The file was modifiedclang/lib/Driver/ToolChains/Clang.cpp
The file was modifiedclang/test/Driver/frame-pointer-elim.c
Commit bbccb94d02ef70c06583f4804cc52a4678ddbc04 by david.bolvansky
[NFC] Fixed test
llvm-svn: 368729
The file was modifiedllvm/test/Other/cgscc-libcall-update.ll
Commit 9e51fb6c576205c4ada59675d89443df10b4abff by Steven Wu
[AutoUpgrader] Make ArcRuntime Autoupgrader more conservative
Summary: This is a tweak to r368311 and r368646 which auto upgrades the
calls to objc runtime functions to objc runtime intrinsics, in order to
make sure that the auto upgrader does not trigger with up-to-date
bitcode.
It is possible for bitcode that is up-to-date to contain direct calls to
objc runtime function and those are not inserted by compiler as part of
ARC and they should not be upgraded. Now auto upgrader only triggers as
when the old style of ARC marker is used so it is guaranteed that it
won't trigger on update-to-date bitcode.
This also means it won't do this upgrade for bitcode from llvm-8 and
llvm-9, which preserves the behavior of those releases. Ideally they
should be upgraded as well but it is more important to make sure
AutoUpgrader will not trigger on up-to-date bitcode.
Reviewers: ahatanak, rjmccall, dexonsmith, pete
Reviewed By: dexonsmith
Subscribers: hiraditya, jkorous, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D66153
llvm-svn: 368730
The file was modifiedllvm/include/llvm/IR/AutoUpgrade.h
The file was modifiedllvm/lib/IR/AutoUpgrade.cpp
The file was addedllvm/test/Bitcode/upgrade-arc-runtime-calls-new.bc
The file was modifiedllvm/test/Bitcode/upgrade-arc-runtime-calls.ll
The file was modifiedllvm/lib/Bitcode/Reader/BitcodeReader.cpp
Commit d328954467f406895ba4306eee1109aad6b18797 by aktoon
[llvm-profdata] Profile dump for compact binary format
Summary: Fix "llvm-profdata show" so it can work with compact binary
format profile. The change is to mark all functions "used" so
SampleProfileReaderCompactBinary::read will read in all profiles
available for dumping. The function names will be MD5 hash for compact
binary format.
Reviewers: wmi, davidxl, danielcdh
Subscribers: hiraditya, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D65162
llvm-svn: 368731
The file was addedllvm/test/tools/llvm-profdata/compact-sample.proftext
The file was modifiedllvm/include/llvm/ProfileData/SampleProfReader.h
The file was addedllvm/test/tools/llvm-profdata/Inputs/compat-sample.profdata
The file was modifiedllvm/lib/ProfileData/SampleProfReader.cpp
Commit f31d8df1c8c69e7a787c1c1c529a524f3001c66a by Jan Korous
[clang] Refactor doc comments to Decls attribution
- Create ASTContext::attachCommentsToJustParsedDecls so we don't have to
load external comments in Sema when trying to attach existing comments
to just parsed Decls.
- Keep comments ordered and cache their decomposed location - faster
SourceLoc-based searching.
- Optimize work with redeclarations.
- Keep one comment per redeclaration chain (represented by canonical
Decl) instead of comment per redeclaration.
- For redeclaration chains with no comment attached keep just the last
declaration in chain that had no comment instead of every comment-less
redeclaration.
Differential Revision: https://reviews.llvm.org/D65301
llvm-svn: 368732
The file was modifiedclang/lib/Serialization/ASTReader.cpp
The file was modifiedclang/include/clang/AST/ASTContext.h
The file was modifiedclang/include/clang/AST/RawCommentList.h
The file was addedclang/test/Index/comment-redeclarations.cpp
The file was modifiedclang/lib/AST/ASTContext.cpp
The file was modifiedclang/lib/AST/RawCommentList.cpp
The file was modifiedclang/lib/Sema/SemaDecl.cpp
The file was modifiedclang/lib/Serialization/ASTWriter.cpp
Commit a655393f17424c92bc81a5084f3c65fcb361040d by david.green
[ARM] Add MVE beats vector cost model
The MVE architecture has the idea of "beats", where a vector instruction
can be executed over several ticks of the architecture. This adds a
similar system into the Arm backend cost model, multiplying the cost of
all vector instructions by a factor.
This factor essentially becomes the expected difference between scalar
code and vector code, on average. MVE Vector instructions can also
overlap so the a true cost of them is often lower. But equally scalar
instructions can in some situations be dual issued, or have other
optimisations such as unrolling or make use of dsp instructions. The
default is chosen as 2. This should not prevent vectorisation is a most
cases (as the vector instructions will still be doing at least 4 times
the work), but it will help prevent over vectorising in cases where the
benefits are less likely.
This adds things so far to the obvious places in ARMTargetTransformInfo,
and updates a few related costs like not treating float instructions as
cost 2 just because they are floats.
Differential Revision: https://reviews.llvm.org/D66005
llvm-svn: 368733
The file was modifiedllvm/test/Analysis/CostModel/ARM/cast.ll
The file was modifiedllvm/test/Analysis/CostModel/ARM/select.ll
The file was modifiedllvm/lib/Target/ARM/ARM.td
The file was modifiedllvm/lib/Target/ARM/ARMSubtarget.cpp
The file was modifiedllvm/lib/Target/ARM/ARMTargetTransformInfo.cpp
The file was modifiedllvm/test/Analysis/CostModel/ARM/divrem.ll
The file was modifiedllvm/test/Analysis/CostModel/ARM/arith.ll
The file was modifiedllvm/test/Analysis/CostModel/ARM/fparith.ll
The file was modifiedllvm/test/Analysis/CostModel/ARM/load_store.ll
The file was modifiedllvm/lib/Target/ARM/ARMSubtarget.h
The file was modifiedllvm/test/Analysis/CostModel/ARM/shuffle.ll
Commit e5ade767e5d147a91eeab33c4ee7b0581b54ee34 by puyan
[NFC][clang] Adding argument based Phase list filtering to
getComplicationPhases
This patch removes usage of FinalPhase from anywhere outside of the
scope where it is used to do argument handling.  It also adds argument
based trimming of the Phase list pulled out of the Types.def table.
Differential Revision: https://reviews.llvm.org/D65993
llvm-svn: 368734
The file was modifiedclang/include/clang/Driver/Types.h
The file was modifiedclang/lib/Driver/Types.cpp
The file was modifiedclang/lib/Driver/Driver.cpp
Commit fc76d8551f54e0a8b99306741d6d818b90334d6a by dkszelethus
[analyzer][NFC] Refactoring BugReporter.cpp P4.: If it can be const,
make it const
When I'm new to a file/codebase, I personally find C++'s strong static
type system to be a great aid. BugReporter.cpp is still painful to read
however: function calls are made with mile long parameter lists,
seemingly all of them taken with a non-const reference/pointer. This
patch fixes nothing but this: make a few things const, and hammer it
until it compiles.
Differential Revision: https://reviews.llvm.org/D65382
llvm-svn: 368735
The file was modifiedclang/include/clang/StaticAnalyzer/Core/BugReporter/PathDiagnostic.h
The file was modifiedclang/include/clang/StaticAnalyzer/Core/PathSensitive/CheckerContext.h
The file was modifiedclang/include/clang/Analysis/AnalysisDeclContext.h
The file was modifiedclang/include/clang/StaticAnalyzer/Core/PathSensitive/ExplodedGraph.h
The file was modifiedclang/lib/StaticAnalyzer/Checkers/ObjCUnusedIVarsChecker.cpp
The file was modifiedclang/lib/StaticAnalyzer/Checkers/UnreachableCodeChecker.cpp
The file was modifiedclang/include/clang/StaticAnalyzer/Core/BugReporter/BugReporterVisitors.h
The file was modifiedclang/include/clang/StaticAnalyzer/Core/PathSensitive/ProgramState.h
The file was modifiedclang/lib/StaticAnalyzer/Checkers/MallocChecker.cpp
The file was modifiedclang/lib/StaticAnalyzer/Core/CallEvent.cpp
The file was modifiedclang/lib/StaticAnalyzer/Core/BugReporterVisitors.cpp
The file was modifiedclang/lib/StaticAnalyzer/Checkers/RetainCountChecker/RetainCountDiagnostics.cpp
The file was modifiedclang/lib/StaticAnalyzer/Core/BugReporter.cpp
The file was modifiedclang/include/clang/StaticAnalyzer/Core/BugReporter/BugReporter.h
The file was modifiedclang/lib/StaticAnalyzer/Core/ExplodedGraph.cpp
Commit 10db641aabf059eb9acf9f7649a9c1cc21955b59 by tpr.llvm
[AMDGPU] Fix to 'Fold readlane from copy of SGPR or imm'
That change (r363670) could leave a copy from vgpr to sgpr. Fixed.
Differential Revision: https://reviews.llvm.org/D66133
Change-Id: I00c3fe6fda2e8e1e36f53195b881b1449c777ea4 llvm-svn: 368736
The file was modifiedllvm/lib/Target/AMDGPU/SIFoldOperands.cpp
The file was modifiedllvm/test/CodeGen/AMDGPU/fold-readlane.mir
Commit f9d75bede84e71eddf0f5e232b8408c947d9adaa by dkszelethus
[analyzer][NFC] Refactoring BugReporter.cpp P5.: Compact mile long
function invocations into objects
In D65379, I briefly described the construction of bug paths from an
ExplodedGraph. This patch is about refactoring the code processing the
bug path into a bug report.
A part of finding a valid bug report was running all visitors on the bug
path, so we already have a (possibly empty) set of diagnostics for each
ExplodedNode in it. Then, for each diagnostic consumer, we construct
non-visitor diagnostic pieces.
* We first construct the final diagnostic piece (the warning), then
* We start ascending the bug path from the error node's predecessor
(since the error node itself was used to construct the warning event).
For each node
* We check the location (whether its a CallEnter, CallExit) etc. We
simultaneously
keep track of where we are with the execution by pushing CallStack when
we see a
CallExit (keep in mind that everything is happening in reverse!),
popping it
when we find a CallEnter, compacting them into a single
PathDiagnosticCallEvent.
void f() {
bar();
}
void g() {
f();
error(); // warning
}
=== The bug path ===
(root) -> f's CallEnter -> bar() -> f's CallExit -> (error node)
=== Constructed report ===
  f's CallEnter -> bar() -> f's CallExit
          ^               /
           \             V
(root) --->  f's CallEvent --> (error node)
  * We also keep track of different PathPieces different location
contexts
* (CallEvent::path in the above example has f's LocationContext, while
the
CallEvent itself is in g's context) in a LocationContextMap object.
Construct
whatever piece, if any, is needed for the note.
* If we need to generate edges (or arrows) do so. Make sure to also
connect
these pieces with the ones that visitors emitted.
* Clean up the constructed PathDiagnostic by making arrows nicer,
pruning
function calls, etc.
So I complained about mile long function invocations with seemingly the
same parameters being passed around. This problem, as I see it, a
natural candidate for creating classes and tying them all together.
I tried very hard to make the implementation feel natural, like, rolling
off the tongue. I introduced 2 new classes: PathDiagnosticBuilder (I
mean, I kept the name but changed almost everything in it) contains
every contextual information
(owns the bug path, the diagnostics constructed but the visitors, the
BugReport itself, etc) needed for constructing a PathDiagnostic object,
and is pretty much completely immutable. BugReportContruct is the object
containing every non-contextual information (the PathDiagnostic object
we're constructing, the current location in the bug path, the location
context map and the call stack I meantioned earlier), and is passed
around all over the place as a single entity instead of who knows how
many parameters.
I tried to used constness, asserts, limiting visibility of fields to my
advantage to clean up the code big time and dramatically improve safety.
Also, whenever I found the code difficult to understand, I added
comments and/or examples.
Here's a complete list of changes and my design philosophy behind it:
* Instead of construcing a ReportInfo object (added by D65379) after
finding a valid bug report, simply return an optional
PathDiagnosticBuilder object straight away. Move findValidReport into
the class as a static method. I find
GRBugReporter::generatePathDiagnostics a joy to look at now.
* Rename generatePathDiagnosticForConsumer to generate (maybe not
needed, but felt that way in the moment) and moved it to
PathDiagnosticBuilder. If we don't need to generate diagnostics, bail
out straight away, like we always should have. After that, construct a
BugReportConstruct object, leaving the rest of the logic untouched.
* Move all static methods that would use contextual information into
PathDiagnosticBuilder, reduce their parameter count drastically by
simply passing around a BugReportConstruct object.
* Glance at the code I removed: Could you tell what the original
PathDiagnosticBuilder::LC object was for? It took a gooood long while
for me to realize that nothing really. It is always equal with the
LocationContext associated with our current position in the bug path.
Remove it completely.
* The original code contains the following expression quite a bit:
LCM[&PD.getActivePath()], so what does it mean? I said that we collect
the contexts associated with different PathPieces, but why would we ever
modify that, shouldn't it be set? Well, theoretically yes, but in the
implementation, the address of PathDiagnostic::getActivePath doesn't
change if we move to an outer, previously unexplored function. Add both
descriptive method names and explanations to BugReportConstruct to help
on this.
* Add plenty of asserts, both for safety and as a poor man's
documentation.
Differential Revision: https://reviews.llvm.org/D65484
llvm-svn: 368737
The file was modifiedclang/include/clang/StaticAnalyzer/Core/BugReporter/BugReporterVisitors.h
The file was modifiedclang/lib/StaticAnalyzer/Core/BugReporterVisitors.cpp
The file was modifiedclang/lib/StaticAnalyzer/Core/BugReporter.cpp
The file was modifiedclang/include/clang/StaticAnalyzer/Core/BugReporter/PathDiagnostic.h
Commit a5ef73cb4bd6d3636b01a25981e1f8a57c8b5d67 by gribozavr
Revert "Fix crash on switch conditions of non-integer types in
templates"
This reverts commit r368706. It broke ClangTidy tests.
llvm-svn: 368738
The file was modifiedclang/test/SemaTemplate/member-access-expr.cpp
The file was removedclang/test/SemaTemplate/non-integral-switch-cond.cpp
The file was modifiedclang/test/SemaTemplate/enum-argument.cpp
The file was modifiedclang/lib/AST/Expr.cpp
The file was modifiedclang/test/SemaTemplate/dependent-names.cpp
The file was modifiedclang/lib/Sema/SemaChecking.cpp
Commit 4a0328c92a818f8cc61271c2ef54e11018090960 by a.bataev
Don't use std::errc
Summary: As noted on Errc.h:
// * std::errc is just marked with is_error_condition_enum. This means
that
//   common patters like AnErrorCode == errc::no_such_file_or_directory
take
//   4 virtual calls instead of two comparisons.
And on some libstdc++ those virtual functions conclude that
------------------------ int main() {
std::error_code foo =
std::make_error_code(std::errc::no_such_file_or_directory);
return foo == std::errc::no_such_file_or_directory;
}
-------------------------
should exit with 0.
Reviewers: thakis, rnk, jfb
Reviewed By: thakis
Subscribers: lebedev.ri, dexonsmith, xbolva00, cfe-commits, caomhin
Tags: #clang
Differential Revision: https://reviews.llvm.org/D66143
llvm-svn: 368739
The file was modifiedclang/lib/Lex/HeaderSearch.cpp
Commit 0fed4945d9056719e4f6c900ec392f35aca6a6f0 by Lang Hames
[ORC] Fix BuildingAJIT tutorial code broken by r368707.
llvm-svn: 368740
The file was modifiedllvm/examples/Kaleidoscope/BuildingAJIT/Chapter1/KaleidoscopeJIT.h
The file was modifiedllvm/examples/Kaleidoscope/BuildingAJIT/Chapter2/KaleidoscopeJIT.h
Commit bddab07d4a219642e70b6ab786ee8c54c8108968 by apl
[Symbol] Decouple clang from CompilerType
Summary: Ideally CompilerType would have no knowledge of clang or any
individual TypeSystem. Decoupling clang is relatively straightforward.
Differential Revision: https://reviews.llvm.org/D66102
llvm-svn: 368741
The file was modifiedlldb/source/Plugins/SymbolFile/PDB/PDBASTParser.cpp
The file was modifiedlldb/source/Plugins/Language/ObjC/NSArray.cpp
The file was modifiedlldb/source/Symbol/CompilerType.cpp
The file was modifiedlldb/source/Plugins/ExpressionParser/Clang/IRForTarget.h
The file was modifiedlldb/unittests/Symbol/TestClangASTContext.cpp
The file was modifiedlldb/source/Symbol/ClangASTContext.cpp
The file was modifiedlldb/include/lldb/Symbol/ClangASTContext.h
The file was modifiedlldb/source/Plugins/ExpressionParser/Clang/IRForTarget.cpp
The file was modifiedlldb/source/Plugins/ExpressionParser/Clang/ClangASTSource.cpp
The file was modifiedlldb/include/lldb/Symbol/CompilerType.h
The file was modifiedlldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCTypeEncodingParser.cpp
Commit 235339357d3c2cf454e59a994686b45f8190671f by Jonas Devlieghere
[DWARF} Use LLVM's debug line parser in LLDB.
The line number table header was substantially revised in DWARF 5 and is
not fully supported by LLDB's current debug line implementation.
This patch replaces the LLDB debug line parser with its counterpart in
LLVM. This was possible because of the limited contact surface between
the code to parse the DWARF debug line section and the rest of LLDB.
We pay a small cost in terms of performance and memory usage. This is
something we plan to address in the near future.
Differential revision: https://reviews.llvm.org/D62570
llvm-svn: 368742
The file was modifiedlldb/include/lldb/Core/FileSpecList.h
The file was removedlldb/source/Plugins/SymbolFile/DWARF/DWARFDebugLine.cpp
The file was modifiedlldb/include/lldb/Symbol/CompileUnit.h
The file was modifiedlldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp
The file was removedlldb/source/Plugins/SymbolFile/DWARF/DWARFDebugLine.h
The file was modifiedlldb/source/Symbol/CompileUnit.cpp
The file was modifiedlldb/source/Plugins/SymbolFile/DWARF/CMakeLists.txt
Commit 52d0cfc91e075658546e5f6f5804855de68a89a3 by shauryab98
[Refactor] Moving SourceExtraction header from lib to include
Summary:
- Moved the SourceExtraction header from lib to include so that it can
be used in clangd.
Reviewers: arphaman
Subscribers: ilya-biryukov, dexonsmith, kadircet, cfe-commits
Tags: #clang
Differential Revision: https://reviews.llvm.org/D65878
llvm-svn: 368743
The file was addedclang/include/clang/Tooling/Refactoring/Extract/SourceExtraction.h
The file was removedclang/lib/Tooling/Refactoring/Extract/SourceExtraction.h
The file was modifiedclang/lib/Tooling/Refactoring/Extract/Extract.cpp
The file was modifiedclang/lib/Tooling/Refactoring/Extract/SourceExtraction.cpp
Commit a8c624a1c469752fe80fdd25426de6d14e4f8ca4 by xiangxdh
    [AIX]Lowering global address for 32/64bit small/large code models
    This patch implements global address lowering for 32/64 bit with
small/large code models.
   1.For 32bit large code model on AIX, there are newly added pseudo
opcode LWZtocL & ADDIStocHA32, the support of which on MC layer will be
      provided by future patches.
   2.The default code model on AIX should be small code model.
   3.Since AIX does not have medium code model, "report_fatal_error"
when users specify it.
    Differential Revision: https://reviews.llvm.org/D63547
llvm-svn: 368744
The file was modifiedllvm/lib/Target/PowerPC/PPCInstrInfo.td
The file was modifiedllvm/lib/Target/PowerPC/PPCTOCRegDeps.cpp
The file was addedllvm/test/CodeGen/PowerPC/lower-globaladdr64-aix.ll
The file was modifiedllvm/lib/Target/PowerPC/PPCISelLowering.h
The file was addedllvm/test/CodeGen/PowerPC/lower-globaladdr32-aix.ll
The file was modifiedllvm/lib/Target/PowerPC/PPCISelDAGToDAG.cpp
The file was modifiedllvm/lib/Target/PowerPC/PPCISelLowering.cpp
The file was modifiedllvm/lib/Target/PowerPC/PPCTargetMachine.cpp
Commit edb788592d561329d84f73d9ef0f15506faefe9e by dkszelethus
[analyzer][NFC] Address inlines of D65484
llvm-svn: 368745
The file was modifiedclang/lib/StaticAnalyzer/Core/BugReporter.cpp
Commit 4d82fa6895c4f9f80c26fa4ca30518e193651004 by Jonas Devlieghere
[DWARF] Guess the path style
Try to guess the FileSpec path style before defaulting to native.
llvm-svn: 368746
The file was modifiedlldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp
Commit b058249a4b3c11e006ac11a2bb91332d53ab1491 by mark.lacey
[GISel] Pass MachineRegisterInfo by const reference to matcher.
Summary: NFC.
Reviewers: aditya_nandakumar, volkan
Subscribers: llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D65971
llvm-svn: 368747
The file was modifiedllvm/include/llvm/CodeGen/GlobalISel/MIPatternMatch.h
Commit 44e6c6bd2f05daaa14388e4935d9a53e06a30d76 by michael.hliao
Remove the extra `;`.
llvm-svn: 368748
The file was modifiedclang/include/clang/StaticAnalyzer/Core/BugReporter/BugReporter.h
Commit 10f0668b572d49c1cda42f60d49a310cff2cd5a6 by Louis Dionne
[libc++] Mark two <chrono> tests as unsupported on AppleClang 11
The operator""y and operator""d will eventually be supported by
AppleClang, but no released version supports them at the moment.
llvm-svn: 368749
The file was modifiedlibcxx/test/std/utilities/time/time.cal/time.cal.day/time.cal.day.nonmembers/literals.pass.cpp
The file was modifiedlibcxx/test/std/utilities/time/time.cal/time.cal.year/time.cal.year.nonmembers/literals.pass.cpp
Commit 8a503e439d0d254e5be5c2655a63a5a34b70dbac by gzchen
[WebAssembly] Make clang emit correct va_arg code for structs
Summary: In the WebAssembly backend, when lowering variadic function
calls, non-single member aggregate type arguments are always passed by
pointer.
However, when emitting va_arg code in clang, the arguments are instead
read as if they are passed directly. This results in the pointer being
read as the actual structure.
Fixes https://github.com/emscripten-core/emscripten/issues/9042.
Reviewers: tlively, sbc100, kripken, aheejin, dschuff
Reviewed By: dschuff
Subscribers: dschuff, jgravelle-google, sunfish, cfe-commits
Tags: #clang
Differential Revision: https://reviews.llvm.org/D66168
llvm-svn: 368750
The file was modifiedclang/test/CodeGen/wasm-varargs.c
The file was modifiedclang/lib/CodeGen/TargetInfo.cpp
Commit ed3324f6b6e3d848b8fb32cdede1cf11c1319238 by jonathanchesterfield
Factor architecture dependent code out of loop.cu
Summary:
[libomptarget] Factor architecture dependent code out of loop.cu
Related to the patch series starting D64217. Added subscribers to said
series as reviewers. This effort is smaller in scope.
This patch factors out just enough architecture dependent code from
loop.cu to allow the same source to be used with amdgcn, given a
different target_impl.h. Testing is that the same bitcode (modulo
variable names) is generated for libomptarget before and after the
refactor, for nvptx and the out of tree amdgcn.
Reviewers: jdoerfert, ABataev, bollu, jfb, tra, grokos, Hahnfeld,
guansong, xtian, gregrodgers, ronlieb, hfinkel, gtbercea, guraypp,
arpith-jacob
Reviewed By: jdoerfert, ABataev
Subscribers: dexonsmith, openmp-commits
Tags: #openmp
Differential Revision: https://reviews.llvm.org/D65836
llvm-svn: 368751
The file was modifiedopenmp/libomptarget/deviceRTLs/nvptx/src/loop.cu
The file was addedopenmp/libomptarget/deviceRTLs/nvptx/src/target_impl.h
Commit 6c1b19ac9e85aff6d6cba14d9c1e29c11c1a0372 by dkszelethus
[analyzer][NFC] Refactoring BugReporter.cpp P6.: Completely get rid of
interestingness propagation
Apparently this does literally nothing.
When you think about this, it makes sense. If something is really
important, we're tracking it anyways, and that system is sophisticated
enough to mark actually interesting statements as such. I wouldn't say
that it's even likely that subexpressions are also interesting (array[10
- x + x]), so I guess even if this produced any effects, its probably
undesirable.
Differential Revision: https://reviews.llvm.org/D65487
llvm-svn: 368752
The file was modifiedclang/lib/StaticAnalyzer/Core/BugReporter.cpp
Commit 615eee6402c8be9f57fe224ca1ad2999cf1cf53d by aditya_nandakumar
[GlobalISel]: Fix lowering of G_SHUFFLE_VECTOR with scalar sources
https://reviews.llvm.org/D66171
llvm-svn: 368753
The file was modifiedllvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp
The file was modifiedllvm/test/MachineVerifier/test_g_shuffle_vector.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-shuffle-vector.mir
Commit 6c97f8898685d5d07f14e859b21fad1ffe5c39c2 by erik.pilkington
Add a missing header comment, NFC
llvm-svn: 368754
The file was modifiedclang/lib/AST/FormatStringParsing.h
Commit e1117addd664c3b52b4a8b7be8bdd678d42f264c by dkszelethus
[analyzer][NFC] Make sure that the BugReport is not modified during the
construction of non-visitor pieces
I feel this is kinda important, because in a followup patch I'm adding
different kinds of interestingness, and propagating the correct kind in
BugReporter.cpp is just one less thing to worry about.
Differential Revision: https://reviews.llvm.org/D65578
llvm-svn: 368755
The file was modifiedclang/lib/StaticAnalyzer/Core/BugReporterVisitors.cpp
The file was modifiedclang/include/clang/StaticAnalyzer/Core/BugReporter/BugReporterVisitors.h
The file was modifiedclang/lib/StaticAnalyzer/Core/BugReporter.cpp
The file was modifiedclang/include/clang/StaticAnalyzer/Core/BugReporter/BugReporter.h
The file was modifiedclang/lib/StaticAnalyzer/Checkers/RetainCountChecker/RetainCountDiagnostics.h
Commit fb1d803224629b578e86df22185872c76f0beed8 by douglas.yung
Relax opcode checks in test to check for only a number instead of a
specific number.
llvm-svn: 368756
The file was modifiedllvm/test/CodeGen/AArch64/GlobalISel/legalizer-info-validation.mir
Commit f41ce85909fbefc88d9d57433486358be23f6f76 by Jessica Paquette
[GlobalISel][NFC] Factor out common target code from
GlobalISelEmitterTests
Factor out commonly-used target code from the GlobalISelEmitter tests
into a GlobalISelEmitterCommon.td file. This is tested by the original
GlobalISelEmitter.td test.
This reduces the amount of boilerplate code necessary for tests like
this.
Differential Revision: https://reviews.llvm.org/D65777
llvm-svn: 368757
The file was modifiedllvm/test/TableGen/GlobalISelEmitterSkippedPatterns.td
The file was modifiedllvm/test/TableGen/GlobalISelEmitter-PR39045.td
The file was modifiedllvm/test/TableGen/GlobalISelEmitter.td
The file was addedllvm/test/TableGen/Common/GlobalISelEmitterCommon.td
Commit b809187a6b4229569f61d9dc3c59fd4ec0775448 by apl
[NFCI] Explicitly provide user-defined constructor for SectionRef
I am changing this to work around an issue that is being hit when
building with clang 3.8. Specifically, clang 3.8 requires that we have a
user defined default constructor for SectionRef for the default
initialization of a const SectionRef.
llvm-svn: 368758
The file was modifiedllvm/tools/llvm-readobj/ELFDumper.cpp
Commit 5146a9ea5d8d3c91cee5d2d2ad4c50491e7a4c58 by aaron.smith
Initial support for native debugging of x86/x64 Windows processes
Summary: Thanks to Hui Huang and the reviewers for all the help with
this patch.
Reviewers: labath, Hui, jfb, clayborg, amccarth
Reviewed By: labath
Subscribers: amccarth, compnerd, dexonsmith, mgorny, jfb, teemperor,
lldb-commits
Tags: #lldb
Differential Revision: https://reviews.llvm.org/D63165
llvm-svn: 368759
The file was addedlldb/source/Plugins/Process/Utility/RegisterContextWindows_i386.h
The file was modifiedlldb/third_party/Python/module/unittest2/unittest2/case.py
The file was addedlldb/source/Plugins/Process/Windows/Common/NativeRegisterContextWindows.h
The file was addedlldb/source/Plugins/Process/Windows/Common/NativeRegisterContextWindows_x86_64.h
The file was modifiedlldb/source/Plugins/Process/Windows/Common/RegisterContextWindows.cpp
The file was modifiedlldb/source/Plugins/Process/Utility/CMakeLists.txt
The file was modifiedlldb/unittests/tools/lldb-server/tests/LLGSTest.cpp
The file was addedlldb/source/Plugins/Process/Windows/Common/NativeRegisterContextWindows_WoW64.h
The file was addedlldb/source/Plugins/Process/Windows/Common/NativeRegisterContextWindows_WoW64.cpp
The file was addedlldb/source/Plugins/Process/Utility/RegisterContextWindows_x86_64.h
The file was addedlldb/source/Plugins/Process/Windows/Common/NativeRegisterContextWindows.cpp
The file was addedlldb/source/Plugins/Process/Windows/Common/NativeThreadWindows.cpp
The file was addedlldb/source/Plugins/Process/Utility/RegisterContextWindows_x86_64.cpp
The file was modifiedlldb/unittests/tools/lldb-server/tests/TestClient.cpp
The file was addedlldb/source/Plugins/Process/Windows/Common/NativeThreadWindows.h
The file was addedlldb/source/Plugins/Process/Windows/Common/NativeRegisterContextWindows_i386.h
The file was modifiedlldb/source/Plugins/Process/Windows/Common/CMakeLists.txt
The file was addedlldb/source/Plugins/Process/Windows/Common/NativeRegisterContextWindows_i386.cpp
The file was modifiedlldb/unittests/tools/lldb-server/tests/TestBase.h
The file was addedlldb/source/Plugins/Process/Windows/Common/NativeProcessWindows.h
The file was addedlldb/source/Plugins/Process/Windows/Common/NativeProcessWindows.cpp
The file was addedlldb/source/Plugins/Process/Windows/Common/NativeRegisterContextWindows_x86_64.cpp
The file was addedlldb/source/Plugins/Process/Utility/RegisterContextWindows_i386.cpp
The file was modifiedlldb/packages/Python/lldbsuite/test/tools/lldb-server/register-reading/main.cpp
The file was modifiedlldb/source/Plugins/Process/Windows/Common/DebuggerThread.cpp
Commit b28fa9ec50244d6300a20560ee9e998aa08e3005 by Jessica Paquette
Attempt to fix issue with unresolved lit test in TableGen
Build bots are unhappy about the Common directory.
Add an excludes list to lit.local.cfg.
llvm-svn: 368760
The file was modifiedllvm/test/TableGen/lit.local.cfg
Commit b724f3d4b33c4a5966f5feeeb7b2917e25fc9692 by Jan Korous
[clang] DirectoryWatcher for Windows stubs (to fix build break).
This is just a code skeleton for DirectoryWatcher-windows.cpp so the
build on Windows stops breaking.
(upstreamed from github.com/apple/swift-clang)
llvm-svn: 368761
The file was modifiedclang/lib/DirectoryWatcher/CMakeLists.txt
The file was addedclang/lib/DirectoryWatcher/windows/DirectoryWatcher-windows.cpp
Commit 9a13852eaba3d6a011009e762a9554112ab7266a by Jan Korous
[clang][DirectoryWatcher] Fix Windows stub after LLVM change
r367979 changed DirectoryWatcher::Create to return an llvm::Expected.
Adjust the Windows stub accordingly.
(upstreamed from github.com/apple/swift-clang)
llvm-svn: 368762
The file was modifiedclang/lib/DirectoryWatcher/windows/DirectoryWatcher-windows.cpp
Commit cc0f0582c8b61bcb65531716e0a78704bdd283d6 by llvm
[Polly-ACC] Fix test after IR-printer change.
After r367755, even unnamed parameters are printed in IR dumps. Change
the test to expect te additional %0 in the line.
llvm-svn: 368763
The file was modifiedpolly/test/GPGPU/phi-nodes-in-kernel.ll
Commit 810b574d772a06c7799ea8a7aa5c071e8f879616 by Lang Hames
[ORC] Fix SpeculativeJIT example code broken by r368707.
llvm-svn: 368764
The file was modifiedllvm/examples/SpeculativeJIT/SpeculativeJIT.cpp
Commit f5a60e590f05981d24a50ff21f611c3ba711acaa by Artem Dergachev
[analyzer] Disable the checker-plugins test on Darwin.
Fixes a buildbot.
llvm-svn: 368765
The file was modifiedclang/test/Analysis/checker-plugins.c
Commit e9e36354531e0dde20fbd7dac9749244a52e61be by Artem Dergachev
[analyzer] exploded-graph-rewriter: Open the converted graph
immediately.
Change the default behavior: the tool no longer dumps the rewritten .dot
file to stdout, but instead it automatically converts it into an .html
file
(which essentially wraps an .svg file) and immediately opens it with the
default web browser.
This means that the tool should now be fairly easy to use:
  $ exploded-graph-rewriter.py /tmp/ExprEngine.dot
The benefits of wrapping the .svg file into an .html file are:
    - It'll open in a web browser, which is the intended behavior.
     An .svg file would be open with an image viewer/editor instead.
   - It avoids the white background around the otherwise dark svg area
     in dark mode.
The feature can be turned off by passing a flag '--rewrite-only'. The
LIT substitution is updated to enforce the old mode because we don't
want web browsers opening on our buildbots.
Differential Revision: https://reviews.llvm.org/D65250
llvm-svn: 368766
The file was modifiedclang/test/Analysis/exploded-graph-rewriter/lit.local.cfg
The file was modifiedclang/utils/analyzer/exploded-graph-rewriter.py
Commit 0b26891f3f2b75dcc8f1a0f3a34342ce27570a2c by Artem Dergachev
[analyzer] exploded-graph-rewriter: NFC: Refactor explorers into
trimmers.
Explorers aren't the right abstraction. For the purposes of displaying
svg files we don't care in which order do we explore the nodes. We may
care about this for other analyses, but we're not there yet.
The function of cutting out chunks of the graph is performed poorly by
the explorers, because querying predecessors/successors on the explored
nodes yields original successors/predecessors even if they aren't being
explored.
Introduce a new entity, "trimmers", that do one thing but to it right:
cut out chunks of the graph. Trimmers mutate the graph, so stale edges
aren't even visible to their consumers in the pipeline. Additionally,
trimmers are intrinsically composable: multiple trimmers can be applied
to the graph sequentially.
Refactor the single-path explorer into the single-path trimmer. Rename
the test file for consistency.
Differential Revision: https://reviews.llvm.org/D65344
llvm-svn: 368767
The file was addedclang/test/Analysis/exploded-graph-rewriter/trimmers.dot
The file was modifiedclang/utils/analyzer/exploded-graph-rewriter.py
The file was removedclang/test/Analysis/exploded-graph-rewriter/explorers.dot
Commit 9289681ea3d000e7d46b2c69bac26b45f960c4dd by Artem Dergachev
[analyzer] exploded-graph-rewriter: Implement manual graph trimming.
When -trim-egraph is unavailable (say, when you're debugging a crash on
a real-world code that takes too long to reduce), it makes sense to view
the untrimmed graph up to the crashing node's predecessor, then dump the
ID
(or a pointer) of the node in the attached debugger, and then trim the
dumped graph in order to keep only paths from the root to the node.
The newly added --to flag does exactly that:
$ exploded-graph-rewriter.py ExprEngine.dot --to 0x12229acd0
Multiple nodes can be specified. Stable IDs of nodes can be used instead
of pointers.
Differential Revision: https://reviews.llvm.org/D65345
llvm-svn: 368768
The file was modifiedclang/utils/analyzer/exploded-graph-rewriter.py
The file was modifiedclang/test/Analysis/exploded-graph-rewriter/trimmers.dot
Commit daf41722bd54e03cc5a367d35b2208ff652f553d by Artem Dergachev
[analyzer] exploded-graph-rewriter: Implement displaying Store pointers.
They're useful when trying to understand what's going on inside your
LazyCompoundValues.
Differential Revision: https://reviews.llvm.org/D65427
llvm-svn: 368769
The file was modifiedclang/test/Analysis/exploded-graph-rewriter/escapes.c
The file was modifiedclang/utils/analyzer/exploded-graph-rewriter.py
The file was modifiedclang/test/Analysis/exploded-graph-rewriter/store.dot
Commit b5eb3e1e82713e4e626fc90e7749960a91e14af1 by efriedma
[AArch64] Remove incorrect usage of MONonTemporal.
This has no effect at the moment, but might matter if we try to
implement non-temporal loads in the future.
llvm-svn: 368770
The file was modifiedllvm/lib/Target/AArch64/AArch64ISelLowering.cpp
Commit 46929df72333dee8ace9fbdaf05a5e03a882708b by dkszelethus
[analyzer] Prune calls to functions with linear CFGs that return a
non-zero constrained value
During the evaluation of D62883, I noticed a bunch of totally
meaningless notes with the pattern of "Calling 'A'" -> "Returning value"
-> "Returning from 'A'", which added no value to the report at all.
This patch (not only affecting tracked conditions mind you) prunes
diagnostic messages to functions that return a value not constrained to
be 0, and are also linear.
Differential Revision: https://reviews.llvm.org/D64232
llvm-svn: 368771
The file was modifiedclang/test/Analysis/track-control-dependency-conditions.cpp
The file was modifiedclang/test/Analysis/uninit-vals.c
The file was modifiedclang/lib/StaticAnalyzer/Core/BugReporterVisitors.cpp
The file was modifiedclang/test/Analysis/diagnostics/find_last_store.c
Commit 3cb3aa2ee807cc93a1659b3bfa0e23292b4fee78 by Jonas Devlieghere
[DebugLine] Be more robust in geussing the path style
My previous change didn't fix the Windows bot. This patch is an attempt
to make guessing the path style more robust by first looking at the
compile dir and falling back to the actual file if that's unsuccessful.
llvm-svn: 368772
The file was modifiedlldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp
Commit 0df9c8c57802b0b1c75380c904b3cce0b902e2c5 by dkszelethus
[analyzer] Track the right hand side of the last store regardless of its
value
Summary: The following code snippet taken from D64271#1572188 has an
issue: namely, because `flag`'s value isn't undef or a concrete int, it
isn't being tracked.
int flag; bool coin();
void foo() {
flag = coin();
}
void test() {
int *x = 0;
int local_flag;
flag = 1;
  foo();
local_flag = flag;
if (local_flag)
   x = new int;
  foo();
local_flag = flag;
if (local_flag)
   *x = 5;
}
This, in my opinion, makes no sense, other values may be interesting
too. Originally added by rC185608.
Differential Revision: https://reviews.llvm.org/D64287
llvm-svn: 368773
The file was modifiedclang/test/Analysis/track-control-dependency-conditions.cpp
The file was modifiedclang/test/Analysis/uninit-const.cpp
The file was modifiedclang/lib/StaticAnalyzer/Core/BugReporterVisitors.cpp
The file was modifiedclang/test/Analysis/uninit-const.c
Commit 216944ee035aa720cc94034f3aa68064eda80469 by aaron.smith
Enable lldb-server on Windows
Summary: This commit contains three small changes to enable lldb-server
on Windows.
- Add lldb-server for Windows to the build
- Disable pty redirection on Windows for the initial lldb-server bring
up
- Add a support to get the parent pid for a process on Windows
- Ifdef some signals which aren't supported on Windows
Thanks to Hui Huang for the help with this patch!
Reviewers: labath
Reviewed By: labath
Subscribers: JDevlieghere, compnerd, Hui, amccarth, xiaobai, srhines,
mgorny, lldb-commits
Tags: #lldb
Differential Revision: https://reviews.llvm.org/D61686
llvm-svn: 368774
The file was modifiedlldb/cmake/modules/LLDBConfig.cmake
The file was modifiedlldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunication.cpp
The file was modifiedlldb/tools/lldb-server/lldb-platform.cpp
The file was modifiedlldb/tools/lldb-server/lldb-gdbserver.cpp
The file was modifiedlldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationServerLLGS.cpp
The file was modifiedlldb/source/Host/windows/Host.cpp
Commit 2a312fc9899ba66c519401b9c98b0880e405c855 by aemerson
[AArch64][GlobalISel] RBS: Treat s128s like vectors when unmerging.
The destinations should be FPRs (for now).
Differential Revision: https://reviews.llvm.org/D66184
llvm-svn: 368775
The file was modifiedllvm/lib/Target/AArch64/AArch64RegisterBankInfo.cpp
The file was modifiedllvm/test/CodeGen/AArch64/GlobalISel/regbankselect-unmerge-vec.mir
Commit 2a39024ac822fb8e5fb4c1ad3b61697bced919e8 by aaron.smith
Update Python tests for lldb-server on Windows
Summary: Thanks to Hui Huang and reviewers for all the help with this
patch!
Reviewers: labath, jfb, clayborg
Reviewed By: labath
Subscribers: Hui, clayborg, dexonsmith, lldb-commits
Tags: #lldb
Differential Revision: https://reviews.llvm.org/D61687
llvm-svn: 368776
The file was modifiedlldb/packages/Python/lldbsuite/test/tools/lldb-server/TestGdbRemoteThreadsInStopReply.py
The file was modifiedlldb/packages/Python/lldbsuite/test/tools/lldb-server/TestLldbGdbServer.py
The file was modifiedlldb/packages/Python/lldbsuite/test/tools/lldb-server/TestGdbRemoteModuleInfo.py
The file was modifiedlldb/packages/Python/lldbsuite/test/tools/lldb-server/inferior-crash/TestGdbRemoteSegFault.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/thread-name/TestGdbRemoteThreadName.py
The file was modifiedlldb/packages/Python/lldbsuite/test/tools/lldb-server/TestGdbRemote_qThreadStopInfo.py
The file was modifiedlldb/packages/Python/lldbsuite/test/dotest.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/commandline/TestStubSetSID.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/lldbgdbserverutils.py
The file was modifiedlldb/packages/Python/lldbsuite/test/tools/lldb-server/TestGdbRemoteSingleStep.py
The file was modifiedlldb/packages/Python/lldbsuite/test/tools/lldb-server/gdbremote_testcase.py
The file was modifiedlldb/packages/Python/lldbsuite/test/tools/lldb-server/TestGdbRemote_vCont.py
The file was modifiedlldb/packages/Python/lldbsuite/test/tools/lldb-server/inferior-crash/TestGdbRemoteAbort.py
The file was modifiedlldb/packages/Python/lldbsuite/test/tools/lldb-server/TestGdbRemoteAuxvSupport.py
Commit 3f7c66d551ef1210f1f48822e6bfef2e1b97881d by dkszelethus
[analyzer][NFC] Prepare visitors for different tracking kinds
When we're tracking a variable that is responsible for a null pointer
dereference or some other sinister programming error, we of course would
like to gather as much information why we think that the variable has
that specific value as possible. However, the newly introduced condition
tracking shows that tracking all values this thoroughly could easily
cause an intolerable growth in the bug report's length.
There are a variety of heuristics we discussed on the mailing list[1] to
combat this, all of them requiring to differentiate in between tracking
a "regular value" and a "condition".
This patch introduces the new `bugreporter::TrackingKind` enum, adds it
to several visitors as a non-optional argument, and moves some functions
around to make the code a little more coherent.
[1] http://lists.llvm.org/pipermail/cfe-dev/2019-June/062613.html
Differential Revision: https://reviews.llvm.org/D64270
llvm-svn: 368777
The file was modifiedclang/lib/StaticAnalyzer/Checkers/UndefCapturedBlockVarChecker.cpp
The file was modifiedclang/include/clang/StaticAnalyzer/Core/BugReporter/BugReporterVisitors.h
The file was modifiedclang/lib/StaticAnalyzer/Checkers/MIGChecker.cpp
The file was modifiedclang/lib/StaticAnalyzer/Checkers/ObjCContainersChecker.cpp
The file was modifiedclang/lib/StaticAnalyzer/Core/BugReporterVisitors.cpp
Commit 5ee4d7a859dc2029adb3ff5a30aaed6b0fb816af by douglas.yung
[ORC] Fix clang-interpreter example code broken by r368707.
llvm-svn: 368778
The file was modifiedclang/examples/clang-interpreter/main.cpp
Commit 21872bc9bf374db7f7f340758ac9bf262b892a53 by apl
[analyzer] Don't delete TaintConfig copy constructor
Summary: Explicitly deleting the copy constructor makes compiling the
function
`ento::registerGenericTaintChecker` difficult with some compilers. When
we construct an `llvm::Optional<TaintConfig>`, the optional is
constructed with a const TaintConfig reference which it then uses to
invoke the deleted TaintConfig copy constructor.
I've observered this failing with clang 3.8 on Ubuntu 16.04.
Reviewers: compnerd, Szelethus, boga95, NoQ, alexshap
Subscribers: xazax.hun, baloghadamsoftware, szepet, a.sidorin,
mikhail.ramalho, donat.nagy, dkrupp, Charusso, llvm-commits, cfe-commits
Tags: #clang
Differential Revision: https://reviews.llvm.org/D66192
llvm-svn: 368779
The file was modifiedclang/lib/StaticAnalyzer/Checkers/GenericTaintChecker.cpp
Commit c65ac865c394179e4144ecd8796beb96c46d09db by aditya_nandakumar
[GlobalISel]: Fix lowering of G_Shuffle_vector where we pick up the
wrong source index
https://reviews.llvm.org/D66182
llvm-svn: 368781
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-shuffle-vector.mir
The file was modifiedllvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp
Commit b6946a2d1209cdf04b919d177a3c1ffd5b9fa589 by Jonas Devlieghere
Fix warning: suggest braces around initialization of subobject
This patch adds braces to the DEFINE_XMM macro.
llvm-svn: 368782
The file was modifiedlldb/source/Plugins/Process/Utility/RegisterContextWindows_x86_64.cpp
Commit cee41ce223c7e5bd1a52a74e37d79bbbc785cf0a by sbc
[libcxxabi] Define _LIBCXXABI_GUARD_ABI_ARM on WebAssembly
This matches ItaniumCXXABI.cpp.
Fixes PR42680
Differential Revision: https://reviews.llvm.org/D64961
llvm-svn: 368783
The file was modifiedlibcxxabi/include/__cxxabi_config.h
Commit f1d538cce54b4a2ae06b07cf5323b0137f5385d3 by maskray
[ELF] Initialize 2 fields of Symbol in SymbolTable::insert
A new symbol is added to elf::symtab in 3 steps:
1) SymbolTable::insert creates a placeholder. 2) Symbol::mergeProperties
3) Symbol::replace
Fields referenced by steps 2) and 3) should be initialized in
SymbolTable::insert.  `traced` and `referenced` were missed previously.
This did not cause problems because compilers generated code that
initialized them (bit fields) to 0.
Reviewed By: grimar
Differential Revision: https://reviews.llvm.org/D66130
llvm-svn: 368784
The file was modifiedlld/ELF/SymbolTable.cpp
The file was modifiedlld/ELF/Symbols.h
Commit dac3ea4eb3f6fc75be4305b9b7ed1a861ea5993e by richard-llvm
Add __has_builtin support for builtin function-like type traits.
Summary: Previously __has_builtin(__builtin_*) would return false for
__builtin_*s that we modeled as keywords rather than as functions
(because they take type arguments). With this patch, all builtins that
are called with function-call-like syntax return true from
__has_builtin (covering __builtin_* and also the __is_* and __has_* type
traits and the handful of similar builtins without such a prefix).
Update the documentation on __has_builtin and on type traits to match.
While doing this I noticed the type trait documentation was out of date
and incomplete; that's fixed here too.
Reviewers: aaron.ballman
Subscribers: jfb, kristina, cfe-commits
Tags: #clang
Differential Revision: https://reviews.llvm.org/D66100
llvm-svn: 368785
The file was modifiedclang/lib/Lex/PPMacroExpansion.cpp
The file was addedclang/test/Preprocessor/feature_tests.cpp
The file was modifiedclang/docs/LanguageExtensions.rst
The file was modifiedclang/include/clang/Basic/TokenKinds.def
The file was modifiedclang/test/Preprocessor/feature_tests.c
The file was modifiedclang/include/clang/Basic/Features.def
Commit 608f2bfd65ec14debe22bce8179ffe2b514b4e91 by jdenny.ornl
[FileCheck] Move -dump-input diagnostic to first line
Without this patch, `-dump-input` prints a diagnostic at the end of its
marker range.  For example:
```
        1: Start. check:1     ^~~~~~
        2: Bad. next:2      X~~~
        3: Many lines next:2      ~~~~~~~~~~
        4: of input. next:2      ~~~~~~~~~
        5: End. next:2      ~~~~ error: no match found
```
This patch moves it to the beginning like this:
```
        1: Start. check:1     ^~~~~~
        2: Bad. next:2      X~~~ error: no match found
        3: Many lines next:2      ~~~~~~~~~~
        4: of input. next:2      ~~~~~~~~~
        5: End. next:2      ~~~~
```
The former somehow looks nicer because the diagnostic doesn't appear to
be somewhere within the marker range.  However, the latter is more
practical, especially when the marker range includes the remainder of a
very long dump.  First, in the case of an error, this patch enables me
to search the dump for `error:` and usually immediately land where the
detected error began.  Second, when trying to follow FileCheck's logic,
it's best to read top down, so this patch enables me to see each
diagnostic as soon as I encounter its marker.
Reviewed By: thopre
Differential Revision: https://reviews.llvm.org/D65702
llvm-svn: 368786
The file was modifiedllvm/test/FileCheck/dump-input-annotations.txt
The file was modifiedllvm/utils/FileCheck/FileCheck.cpp
Commit dbb757f462054ff9e06a46ce72135843e42f960b by jdenny.ornl
[FileCheck] Document FILECHECK_OPTS in -help
Reviewed By: thopre
Differential Revision: https://reviews.llvm.org/D65707
llvm-svn: 368787
The file was modifiedllvm/utils/FileCheck/FileCheck.cpp
Commit 94010b2b7f47de78f4d0ec9be7eb8414747dfd39 by rjmccall
Extend coroutines to support a "returned continuation" lowering.
A quick contrast of this ABI with the currently-implemented ABI:
- Allocation is implicitly managed by the lowering passes, which is fine
for frontends that are fine with assuming that allocation cannot fail.
This assumption is necessary to implement dynamic allocas anyway.
- The lowering attempts to fit the coroutine frame into an opaque,
statically-sized buffer before falling back on allocation; the same
buffer must be provided to every resume point.  A buffer must be at
least pointer-sized.
- The resume and destroy functions have been combined; the continuation
function takes a parameter indicating whether it has succeeded.
- Conversely, every suspend point begins its own continuation function.
- The continuation function pointer is directly returned to the caller
instead of being stored in the frame.  The continuation can therefore
directly destroy the frame when exiting the coroutine instead of having
to leave it in a defunct state.
- Other values can be returned directly to the caller instead of going
through a promise allocation.  The frontend provides a "prototype"
function declaration from which the type, calling convention, and
attributes of the continuation functions are taken.
- On the caller side, the frontend can generate natural IR that directly
uses the continuation functions as long as it prevents IPO with the
coroutine until lowering has happened.  In combination with the point
above, the frontend is almost totally in charge of the ABI of the
coroutine.
- Unique-yield coroutines are given some special treatment.
llvm-svn: 368788
The file was modifiedllvm/lib/Transforms/Coroutines/CoroSplit.cpp
The file was modifiedllvm/lib/Transforms/Coroutines/CoroInternal.h
The file was modifiedllvm/lib/Transforms/Coroutines/Coroutines.cpp
The file was modifiedllvm/docs/Coroutines.rst
The file was modifiedllvm/lib/Transforms/Coroutines/CoroInstr.h
The file was modifiedllvm/lib/Transforms/Coroutines/CoroFrame.cpp
The file was addedllvm/test/Transforms/Coroutines/coro-retcon.ll
The file was modifiedllvm/include/llvm/IR/Intrinsics.td
The file was modifiedllvm/lib/Transforms/Coroutines/CoroEarly.cpp
The file was addedllvm/test/Transforms/Coroutines/coro-retcon-once-value2.ll
The file was modifiedllvm/test/Transforms/Coroutines/coro-debug.ll
The file was addedllvm/test/Transforms/Coroutines/coro-retcon-value.ll
The file was modifiedllvm/lib/Transforms/Coroutines/CoroCleanup.cpp
The file was addedllvm/test/Transforms/Coroutines/coro-retcon-once-value.ll
Commit 382921418554987bb1757964846545b0cfc14a63 by rjmccall
Generalize llvm.coro.suspend.retcon to allow an arbitrary number of
arguments to be passed back to the continuation function.
llvm-svn: 368789
The file was addedllvm/test/Transforms/Coroutines/coro-retcon-resume-values.ll
The file was modifiedllvm/lib/Transforms/Coroutines/Coroutines.cpp
The file was modifiedllvm/test/Transforms/Coroutines/coro-retcon-once-value2.ll
The file was modifiedllvm/test/Transforms/Coroutines/coro-retcon-once-value.ll
The file was modifiedllvm/test/Transforms/Coroutines/coro-retcon-value.ll
The file was modifiedllvm/include/llvm/IR/Intrinsics.td
The file was modifiedllvm/lib/Transforms/Coroutines/CoroSplit.cpp
The file was addedllvm/test/Transforms/Coroutines/coro-retcon-resume-values2.ll
The file was modifiedllvm/test/Transforms/Coroutines/coro-retcon.ll
The file was modifiedllvm/lib/Transforms/Coroutines/CoroInternal.h
Commit 137b50f0c3b1803d3a743cc2b863fe1acb6f62e1 by rjmccall
Guard dumps in the coro intrinsic validation logic behind NDEBUG checks.
dump() is not guaranteed to be defined in all builds.
llvm-svn: 368790
The file was modifiedllvm/lib/Transforms/Coroutines/Coroutines.cpp
Commit 62a5dde0c29f168545b7352f88fdffa12f931c39 by rjmccall
Add intrinsics for doing frame-bound dynamic allocations within a
coroutine.
These rely on having an allocator provided to the coroutine and thus,
for now, only work in retcon lowerings.
llvm-svn: 368791
The file was addedllvm/test/Transforms/Coroutines/coro-retcon-alloca.ll
The file was modifiedllvm/lib/Transforms/Coroutines/CoroInstr.h
The file was modifiedllvm/lib/Transforms/Coroutines/Coroutines.cpp
The file was modifiedllvm/include/llvm/IR/Intrinsics.td
The file was modifiedllvm/lib/Transforms/Coroutines/CoroFrame.cpp
Commit ac404832760a5ed71bc40083bdd52935524136c1 by rjmccall
Fix a use-after-free in the coro.alloca treatment.
llvm-svn: 368792
The file was modifiedllvm/test/Transforms/Coroutines/coro-retcon-alloca.ll
The file was modifiedllvm/lib/Transforms/Coroutines/CoroFrame.cpp
Commit d47801e7182a64c52891b34e749e35c396a002f8 by rjmccall
In coro.retcon lowering, don't explode if the optimizer messes around
with the linkage of the prototype or the exact types of the yielded
values.
llvm-svn: 368793
The file was modifiedllvm/lib/Transforms/Coroutines/Coroutines.cpp
The file was modifiedllvm/lib/Transforms/Coroutines/CoroSplit.cpp
The file was modifiedllvm/test/Transforms/Coroutines/coro-retcon.ll
Commit dc4668e5cf91029f3044114903c286c10e1ffdea by rjmccall
Update for optimizer changes.
rdar://37352868
llvm-svn: 368794
The file was modifiedllvm/test/Transforms/Coroutines/coro-retcon-alloca.ll
Commit 2133feec933ea7311ee74ee39a5e6a0bcfaef822 by rjmccall
Support swifterror in coroutine lowering.
The support for swifterror allocas should work in all lowerings. The
support for swifterror arguments only really works in a lowering with
prototypes where you can ensure that the prototype also has a swifterror
argument; I'm not really sure how it could possibly be made to work in
the switch lowering.
llvm-svn: 368795
The file was addedllvm/test/Transforms/Coroutines/coro-swifterror.ll
The file was modifiedllvm/lib/Transforms/Coroutines/CoroSplit.cpp
The file was modifiedllvm/lib/Transforms/Coroutines/CoroInternal.h
The file was modifiedllvm/lib/Transforms/Coroutines/CoroFrame.cpp
Commit 5f60b68c68c00137304be0e0016e43d02066b2fd by rjmccall
Remove unreachable blocks before splitting a coroutine.
The suspend-crossing algorithm is not correct in the presence of uses
that cannot be reached on some successor path from their defs.
llvm-svn: 368796
The file was addedclang/test/CodeGenCoroutines/coro-retcon-unreachable.ll
The file was modifiedllvm/lib/Transforms/Coroutines/CoroSplit.cpp
Commit 3bbf207fbc56d982d17a5e111f56dbdc4f743774 by rjmccall
Don't run a full verifier pass in coro-splitting's private pipeline.
Potentially addresses rdar://49022293.
llvm-svn: 368797
The file was modifiedllvm/lib/Transforms/Coroutines/CoroSplit.cpp
Commit a318c5507348bfc4788310747b7498848de24c42 by rjmccall
Coroutines: adjust for SVN r358739
CallSite has been removed in favour of CallBase.  Adjust the coroutine
split to account for that.
llvm-svn: 368798
The file was modifiedllvm/lib/Transforms/Coroutines/CoroSplit.cpp
Commit 20644a9540c85f1d6af601fd7ca56f758831601e by JF Bastien
Remove minimum toolchain soft-error
Summary: Back in January I changed the minimum toolchain version
required to build clang and LLVM: D57264. Since then we've release LLVM
8, following
[our process](http://llvm.org/docs/DeveloperPolicy.html#toolchain) it's
therefore now a good time to remove the soft-error and officially
deprecate older toolchains. I tried this out last Tursday night to see
if any bots complained, and I saw no complaints. I also manually audited
bots and didn't see any bot that should break, but their toolchain
information is unreliable and some bots are offline.
Once this patch stick we'll move to C++14 as we've
[already
agreed](http://lists.llvm.org/pipermail/llvm-dev/2019-January/129452.html).
Subscribers: mgorny, jkorous, dexonsmith, llvm-commits, EricWF, thakis,
chandlerc
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D66188
llvm-svn: 368799
The file was modifiedllvm/docs/GettingStarted.rst
The file was modifiedllvm/cmake/modules/CheckCompilerVersion.cmake
Commit d4edd9d97e4e9200d885297c79b7e7b55961dae8 by dlj
Revert '[LICM] Make Loop ICM profile aware' and 'Fix pass dependency for
LICM'
This reverts r368526 (git commit
7e71aa24bc0788690fea7f0d7eab400c6a784deb) This reverts r368542 (git
commit cb5a90fd314a7914cf293797bb4fd7a6841052cf)
llvm-svn: 368800
The file was modifiedllvm/test/Transforms/LICM/sink.ll
The file was modifiedllvm/test/Other/opt-O2-pipeline.ll
The file was modifiedllvm/test/Other/opt-O3-pipeline.ll
The file was modifiedllvm/include/llvm/Transforms/Utils/LoopUtils.h
The file was modifiedllvm/test/Other/opt-Os-pipeline.ll
The file was modifiedllvm/test/Other/pass-pipelines.ll
The file was modifiedllvm/lib/Transforms/Scalar/LICM.cpp
Commit 491ca2425d4a58bf1d732c5a051e5714a23ca198 by dorit.nuzman
[LV] Fold-tail flag
This is the compiler-flag equivalent of the Predicate pragma
(https://reviews.llvm.org/D65197), to direct the vectorizer to fold the
remainder-loop into the main-loop using predication.
Differential Revision: https://reviews.llvm.org/D66108
Reviewers: Ayal, hsaito, fhahn, SjoerdMeije llvm-svn: 368801
The file was modifiedllvm/lib/Transforms/Vectorize/LoopVectorize.cpp
The file was modifiedllvm/test/Transforms/LoopVectorize/X86/tail_loop_folding.ll
Commit afd493ea2b6517ff7a74851b86f3f977470e80e6 by Raphael Isemann
[lldb] Reinstate original guard variable check
The isGuardVariableSymbol option for ignoring Microsoft's ABI was
originally added to get the bots green, but now that we found the actual
issue (that we checked for prefix instead of suffix in the MS ABI
check), we should be able to properly implement the guard variable check
without any strange Microsoft exceptions.
llvm-svn: 368802
The file was modifiedlldb/source/Plugins/ExpressionParser/Clang/IRForTarget.cpp
Commit d4c50f7326a063e073b380c4a7a5c10dd02a5e5d by twoh
[NewPM][PassInstrumentation] IR printing support from clang driver
Summary: https://reviews.llvm.org/D50923 enabled the IR printing support
for the new pass manager, but only for the case when `opt` tool is used
as a driver. This patch is to enable the IR printing when `clang` is
used as a driver.
Reviewers: fedor.sergeev, philip.pfaffe
Subscribers: cfe-commits, yamauchi, llvm-commits
Tags: #clang
Differential Revision: https://reviews.llvm.org/D65975
llvm-svn: 368804
The file was addedclang/test/Misc/printer.c
The file was modifiedclang/lib/CodeGen/BackendUtil.cpp
Commit 1427226fe8c363b454a06ead02b041b1f658fe8f by gribozavr
Removed dead code from clang/tools/libclang/CXIndexDataConsumer.{cpp,h}
Reviewers: jkorous
Subscribers: dexonsmith, arphaman, cfe-commits
Tags: #clang
Differential Revision: https://reviews.llvm.org/D66156
llvm-svn: 368805
The file was modifiedclang/tools/libclang/CXIndexDataConsumer.cpp
The file was modifiedclang/tools/libclang/CXIndexDataConsumer.h
Commit 72ef113d40ef57d9dd4cf7ba6819e2048df99fc6 by pavel
[API] Have SBCommandReturnObject::GetOutput/Error return "" instead of
nullptr
Summary: It seems this was an unintended side-effect of D26698. AFAICT,
these functions did return an empty string before that patch, and the
patch contained code which attempted to ensure that, but those efforts
were negated by ConstString::AsCString, which by default returns a
nullptr even for empty strings.
This patch:
- fixes the GetOutput/Error methods to really return empty strings
- adds and explicit test for that
- removes a workaround in lldbtest.py, which was masking this problem
from our other tests
Reviewers: jingham, clayborg
Subscribers: zturner, lldb-commits
Differential Revision: https://reviews.llvm.org/D65739
llvm-svn: 368806
The file was modifiedlldb/packages/Python/lldbsuite/test/lldbtest.py
The file was modifiedlldb/packages/Python/lldbsuite/test/python_api/interpreter/TestCommandInterpreterAPI.py
The file was modifiedlldb/source/API/SBCommandReturnObject.cpp
Commit 2faafc6e4f20f62e83770a1eaae22fbf4b8603c7 by lebedev.ri
[InstCombine][NFC] Autogenerate checks in adjust-for-minmax.ll
Being affected by WIP patch.
llvm-svn: 368807
The file was modifiedllvm/test/Transforms/InstCombine/adjust-for-minmax.ll
Commit ec25edc17a45f838c2e76431f5c345d9c6e6bf89 by hokein
Fix the -Wunused-variable warning.
llvm-svn: 368808
The file was modifiedclang/lib/StaticAnalyzer/Core/BugReporterVisitors.cpp
The file was modifiedclang/lib/StaticAnalyzer/Core/BugReporter.cpp
Commit b0a8a25442075ddb86142237145e99a656fb161d by david.bolvansky
[Codegen] Updated test for D66158
Reviewers: jdoerfert
Reviewed By: jdoerfert
Subscribers: cfe-commits
Tags: #clang
Differential Revision: https://reviews.llvm.org/D66173
llvm-svn: 368809
The file was modifiedclang/test/CodeGen/struct-copy.c
Commit bb519c622a58e564924864ec5b213f9fcc69b853 by david.bolvansky
[Intrinsics] Add a 'NoAlias' intrinsic property; annotate llvm.memcpy
Reviewers: jdoerfert
Reviewed By: jdoerfert
Differential Revision: https://reviews.llvm.org/D66158
llvm-svn: 368810
The file was modifiedllvm/include/llvm/IR/Intrinsics.td
The file was modifiedllvm/utils/TableGen/CodeGenTarget.cpp
The file was modifiedllvm/utils/TableGen/IntrinsicEmitter.cpp
The file was modifiedllvm/test/Other/lint.ll
The file was modifiedllvm/test/Bitcode/upgrade-memory-intrinsics.ll
The file was modifiedllvm/utils/TableGen/CodeGenIntrinsics.h
Commit d4a99d87a20dae0507a95322fc903768f627185a by grimar
[llvm-objdump] - Add a relocation-xindex-symbol.test test case.
This rewrites the exitent test case to use YAML instead of the
precompiled object and moves it from test/Object to an appropriate
llvm-objdump tests folder.
Differential revision: https://reviews.llvm.org/D66140
llvm-svn: 368811
The file was addedllvm/test/tools/llvm-objdump/relocation-xindex-symbol.test
The file was removedllvm/test/Object/objdump-shndx.test
The file was removedllvm/test/Object/Inputs/shndx.elf
Commit a0c6a3571422826e856002714d9bb008584fe8b3 by grimar
[llvm/Object] - Convert SectionRef::getName() to return Expected<>
SectionRef::getName() returns std::error_code now. Returning Expected<>
instead has multiple benefits.
For example, it forces user to check the error returned. Also Expected<>
may keep a valuable string error message, what is more useful than
having a error code.
(Object\invalid.test was updated to show the new messages printed.)
This patch makes a change for all users to switch to Expected<> version.
Note: in a few places the error returned was ignored before my changes.
In such places I left them ignored. My intention was to convert the
interface used, and not to improve and/or the existent users in this
patch.
(Though I think this is good idea for a follow-ups to revisit such
places and either remove consumeError calls or comment each of them to
clarify why it is OK to have them).
Differential revision: https://reviews.llvm.org/D66089
llvm-svn: 368812
The file was modifiedllvm/include/llvm/Object/ObjectFile.h
The file was modifiedllvm/tools/llvm-objdump/MachODump.cpp
The file was modifiedllvm/lib/DebugInfo/DWARF/DWARFContext.cpp
The file was modifiedllvm/lib/ExecutionEngine/RuntimeDyld/Targets/RuntimeDyldMachOI386.h
The file was modifiedllvm/tools/llvm-size/llvm-size.cpp
The file was modifiedllvm/tools/llvm-pdbutil/DumpOutputStyle.cpp
The file was modifiedllvm/test/Object/invalid.test
The file was modifiedllvm/tools/llvm-readobj/ObjDumper.cpp
The file was modifiedllvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldMachO.cpp
The file was modifiedllvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyld.cpp
The file was modifiedllvm/lib/Object/Object.cpp
The file was modifiedllvm/tools/llvm-cov/TestingSupport.cpp
The file was modifiedllvm/include/llvm/Object/ELFObjectFile.h
The file was modifiedllvm/lib/DebugInfo/Symbolize/Symbolize.cpp
The file was modifiedllvm/tools/dsymutil/DwarfLinker.cpp
The file was modifiedllvm/lib/ExecutionEngine/RuntimeDyld/Targets/RuntimeDyldCOFFX86_64.h
The file was modifiedllvm/tools/llvm-nm/llvm-nm.cpp
The file was modifiedllvm/lib/ExecutionEngine/RuntimeDyld/Targets/RuntimeDyldMachOARM.h
The file was modifiedllvm/lib/ProfileData/Coverage/CoverageMappingReader.cpp
The file was modifiedllvm/tools/llvm-objdump/COFFDump.cpp
The file was modifiedllvm/tools/llvm-pdbutil/InputFile.cpp
The file was modifiedllvm/tools/llvm-readobj/ELFDumper.cpp
The file was modifiedllvm/lib/DebugInfo/Symbolize/SymbolizableObjectFile.cpp
The file was modifiedllvm/lib/Object/ELFObjectFile.cpp
The file was modifiedllvm/lib/XRay/InstrumentationMap.cpp
The file was modifiedllvm/lib/ExecutionEngine/JITLink/MachOAtomGraphBuilder.cpp
The file was modifiedllvm/lib/Object/Decompressor.cpp
The file was modifiedllvm/tools/llvm-dwp/llvm-dwp.cpp
The file was modifiedllvm/lib/Object/COFFObjectFile.cpp
The file was modifiedllvm/tools/llvm-readobj/Win64EHDumper.cpp
The file was modifiedllvm/lib/Object/MachOObjectFile.cpp
The file was modifiedllvm/tools/llvm-cfi-verify/lib/FileAnalysis.cpp
The file was modifiedllvm/tools/dsymutil/DwarfStreamer.cpp
The file was modifiedllvm/tools/llvm-readobj/COFFDumper.cpp
The file was modifiedllvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldELF.cpp
The file was modifiedllvm/tools/llvm-readobj/MachODumper.cpp
The file was modifiedllvm/tools/obj2yaml/coff2yaml.cpp
The file was modifiedllvm/tools/llvm-objdump/llvm-objdump.cpp
The file was modifiedllvm/tools/llvm-rtdyld/llvm-rtdyld.cpp
The file was modifiedllvm/tools/llvm-readobj/WasmDumper.cpp
Commit 468919e18231d0c30b5c0f84a87145db06e3554b by grimar
Revert r368812 "[llvm/Object] - Convert SectionRef::getName() to return
Expected<>"
It broke clang BB:
http://lab.llvm.org:8011/builders/clang-x86_64-debian-fast/builds/16455
llvm-svn: 368813
The file was modifiedllvm/tools/obj2yaml/coff2yaml.cpp
The file was modifiedllvm/lib/DebugInfo/DWARF/DWARFContext.cpp
The file was modifiedllvm/test/Object/invalid.test
The file was modifiedllvm/lib/XRay/InstrumentationMap.cpp
The file was modifiedllvm/tools/llvm-readobj/MachODumper.cpp
The file was modifiedllvm/tools/llvm-size/llvm-size.cpp
The file was modifiedllvm/tools/llvm-cfi-verify/lib/FileAnalysis.cpp
The file was modifiedllvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldMachO.cpp
The file was modifiedllvm/lib/Object/ELFObjectFile.cpp
The file was modifiedllvm/tools/dsymutil/DwarfStreamer.cpp
The file was modifiedllvm/tools/dsymutil/DwarfLinker.cpp
The file was modifiedllvm/tools/llvm-pdbutil/InputFile.cpp
The file was modifiedllvm/lib/ExecutionEngine/RuntimeDyld/Targets/RuntimeDyldMachOARM.h
The file was modifiedllvm/include/llvm/Object/ObjectFile.h
The file was modifiedllvm/lib/Object/Decompressor.cpp
The file was modifiedllvm/lib/ExecutionEngine/RuntimeDyld/Targets/RuntimeDyldCOFFX86_64.h
The file was modifiedllvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyld.cpp
The file was modifiedllvm/tools/llvm-readobj/COFFDumper.cpp
The file was modifiedllvm/include/llvm/Object/ELFObjectFile.h
The file was modifiedllvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldELF.cpp
The file was modifiedllvm/lib/ExecutionEngine/RuntimeDyld/Targets/RuntimeDyldMachOI386.h
The file was modifiedllvm/tools/llvm-cov/TestingSupport.cpp
The file was modifiedllvm/tools/llvm-dwp/llvm-dwp.cpp
The file was modifiedllvm/lib/Object/COFFObjectFile.cpp
The file was modifiedllvm/tools/llvm-objdump/llvm-objdump.cpp
The file was modifiedllvm/tools/llvm-rtdyld/llvm-rtdyld.cpp
The file was modifiedllvm/lib/ProfileData/Coverage/CoverageMappingReader.cpp
The file was modifiedllvm/tools/llvm-objdump/MachODump.cpp
The file was modifiedllvm/tools/llvm-readobj/ELFDumper.cpp
The file was modifiedllvm/lib/Object/Object.cpp
The file was modifiedllvm/lib/DebugInfo/Symbolize/SymbolizableObjectFile.cpp
The file was modifiedllvm/tools/llvm-nm/llvm-nm.cpp
The file was modifiedllvm/lib/Object/MachOObjectFile.cpp
The file was modifiedllvm/tools/llvm-pdbutil/DumpOutputStyle.cpp
The file was modifiedllvm/lib/ExecutionEngine/JITLink/MachOAtomGraphBuilder.cpp
The file was modifiedllvm/tools/llvm-readobj/WasmDumper.cpp
The file was modifiedllvm/tools/llvm-readobj/Win64EHDumper.cpp
The file was modifiedllvm/lib/DebugInfo/Symbolize/Symbolize.cpp
The file was modifiedllvm/tools/llvm-readobj/ObjDumper.cpp
The file was modifiedllvm/tools/llvm-objdump/COFFDump.cpp
Commit df7ec1ff7bd1b15581d5ae011638c6fee009557c by martin
[MinGW] Remove stray/inconsistent comment chars in test file. NFC.
Test directives don't need to be in comments in this file.
llvm-svn: 368814
The file was modifiedlld/test/MinGW/driver.test
Commit ce26ad7a9db0cde092bd423108d5aaef257e3875 by martin
[MinGW] Restructure Options.td to use multiclass where sensible. NFC.
Differential Revision: https://reviews.llvm.org/D66065
llvm-svn: 368815
The file was modifiedlld/MinGW/Options.td
Commit 0e5530abfc70ab1994fa2b120e9bc6fd1461cb33 by martin
[MinGW] Correct handling different forms of a few options
Support the equals form of the long --entry=<symbol> option, add a test
for the -e<symbol> form.
Add tests for single dash forms of -exclude-all-symbols and
-export-all-symbols.
Support single-dash forms of -out-implib and -output-def, support the
equals form of --output-def=<file>. (We previously had a test to
explicitly disallow -out-implib, but it turns out that GNU ld actually
does support it just fine, despite also matching the
-o<file> option.)
Disallow the double-dashed --u form, add a test for -u<symbol>.
Differential Revision: https://reviews.llvm.org/D66066
llvm-svn: 368816
The file was modifiedlld/MinGW/Options.td
The file was modifiedlld/test/MinGW/driver.test
Commit 967583bc087c035fdc4422d05be1030eecf2b241 by dkszelethus
[analyzer] Note last writes to a condition only in a nested stackframe
Exactly what it says on the tin! The comments in the code detail this a
little more too.
Differential Revision: https://reviews.llvm.org/D64272
llvm-svn: 368817
The file was modifiedclang/test/Analysis/track-control-dependency-conditions.cpp
The file was modifiedclang/lib/StaticAnalyzer/Core/BugReporterVisitors.cpp
The file was modifiedclang/include/clang/StaticAnalyzer/Core/BugReporter/BugReporterVisitors.h
Commit c50959431928097bbd675ff3a2346813982db176 by 1.int32
[ASTImporter] Import default expression of param before creating the
param.
Summary: The default expression of a parameter variable should be
imported before the parameter variable object is created. Otherwise the
function is created with an incomplete parameter variable (default
argument is nullptr) and in this intermediary state the expression is
imported. This import can have a reference to the incomplete parameter
variable that causes crash.
Reviewers: martong, a.sidorin, shafik
Reviewed By: martong
Subscribers: rnkovacs, dkrupp, Szelethus, gamesh411, cfe-commits
Tags: #clang
Differential Revision: https://reviews.llvm.org/D65577
llvm-svn: 368818
The file was modifiedclang/include/clang/AST/ASTImporter.h
The file was modifiedclang/test/Analysis/Inputs/ctu-other.cpp.externalDefMap.txt
The file was modifiedclang/test/Analysis/ctu-main.cpp
The file was modifiedclang/lib/AST/ASTImporter.cpp
The file was modifiedclang/test/Analysis/Inputs/ctu-other.cpp
Commit 32f1e1a01d9ad8d00345eb005e362eedf47bb1fb by lebedev.ri
[InstCombine] Refactor getFlippedStrictnessPredicateAndConstant() out of
canonicalizeCmpWithConstant(), NFCI
I'd like to use it elsewhere, hopefully without reinventing the wheel.
No functional change intended so far.
llvm-svn: 368820
The file was modifiedllvm/lib/Transforms/InstCombine/InstCombineInternal.h
The file was modifiedllvm/lib/Transforms/InstCombine/InstCombineCompares.cpp
Commit a8eef4e5f50009f9b4387c8e617f34493549a781 by jh7370
[llvm-size][test] Improve llvm-size testing
This patch significantly improves the llvm-size testing. The changes
made are:
1) Change all tests to use yaml2obj instead of assembly or pre-canned
  inputs. 2) Move the tests out of the X86 directory, since they don't
need to be
  there after 1). 3) Increased test coverage. 4) Added comments to
explain purpose of tests.
I haven't attempted to add test coverage for all Mach-O related code, as
I am not familiar enough with that file format to be able to.
Reviewers: grimar, MaskRay
Differential Revision: https://reviews.llvm.org/D66134
llvm-svn: 368821
The file was addedllvm/test/tools/llvm-size/macho-sysv.test
The file was addedllvm/test/tools/llvm-size/radix.test
The file was addedllvm/test/tools/llvm-size/elf-sysv.test
The file was addedllvm/test/tools/llvm-size/stdin.test
The file was removedllvm/test/tools/llvm-size/X86/lit.local.cfg
The file was addedllvm/test/tools/llvm-size/totals.test
The file was addedllvm/test/tools/llvm-size/elf-m.test
The file was addedllvm/test/tools/llvm-size/archive.test
The file was removedllvm/test/tools/llvm-size/Inputs/darwin-m1.o
The file was removedllvm/test/tools/llvm-size/X86/ignore-sections.s
The file was removedllvm/test/tools/llvm-size/X86/format-berkeley-tabs.s
The file was addedllvm/test/tools/llvm-size/no-input.test
The file was removedllvm/test/tools/llvm-size/Inputs/darwin-m.o
The file was addedllvm/test/tools/llvm-size/unknown-format.test
The file was removedllvm/test/tools/llvm-size/X86/elf-sizes.test
The file was addedllvm/test/tools/llvm-size/elf-berkeley.test
The file was removedllvm/test/tools/llvm-size/X86/test-common.s
The file was addedllvm/test/tools/llvm-size/version.test
The file was addedllvm/test/tools/llvm-size/invalid-input.test
The file was addedllvm/test/tools/llvm-size/common.test
The file was addedllvm/test/tools/llvm-size/multiple-inputs.test
The file was modifiedllvm/test/tools/llvm-size/darwin-m.test
The file was removedllvm/test/tools/llvm-size/basic.test
The file was modifiedllvm/test/tools/llvm-size/help.test
The file was addedllvm/test/tools/llvm-size/response-file.test
The file was addedllvm/test/tools/llvm-size/macho-berkeley.test
The file was addedllvm/test/tools/llvm-size/long-format.test
Commit 15e26d1fe945eda5de84ab9b90bc63f2945ba9cc by sven.vanhaastregt
Fix _WIN32 / _WIN64 Wundef warnings
For these macros it is the definedness that matters rather than the
value.  Make new uses of these macros consistent with existing uses.
llvm-svn: 368822
The file was modifiedclang/lib/Driver/ToolChains/HIP.cpp
Commit 8caa0aaa4dcdd3e68c260c75abfad52519d70753 by maskray
[AsmPrinter] Delete redundant .type foo, @function when emitting an
ifunc
In MCAsmStreamer:
.type foo,@function   # <--- this is redundant
.type foo,@gnu_indirect_function
In MCELFStreamer, the latter STT_GNU_IFUNC overrides STT_FUNC.
llvm-svn: 368823
The file was modifiedllvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
The file was modifiedllvm/test/CodeGen/X86/ifunc-asm.ll
Commit 928bf19b65f32dd58f1ec13633ecd177d2bab32f by ibiryukov
[clangd] Fix typos and grammar in a comment. NFC
llvm-svn: 368824
The file was modifiedclang-tools-extra/clangd/FindSymbols.cpp
Commit a11d302fa00ba423b09c94491bc868cb991ff379 by grimar
[clang] - An update after LLVM change.
SectionRef::getName() was changed to return Expected<> (D66089)
llvm-svn: 368825
The file was modifiedclang/tools/clang-offload-bundler/ClangOffloadBundler.cpp
The file was modifiedclang/lib/CodeGen/ObjectFilePCHContainerOperations.cpp
Commit bcc00e1afbdc107e05b2977fde26053a52295dd1 by grimar
Recommit r368812 "[llvm/Object] - Convert SectionRef::getName() to
return Expected<>"
Changes: no changes. A fix for the clang code will be landed right on
top.
Original commit message:
SectionRef::getName() returns std::error_code now. Returning Expected<>
instead has multiple benefits.
For example, it forces user to check the error returned. Also Expected<>
may keep a valuable string error message, what is more useful than
having a error code.
(Object\invalid.test was updated to show the new messages printed.)
This patch makes a change for all users to switch to Expected<> version.
Note: in a few places the error returned was ignored before my changes.
In such places I left them ignored. My intention was to convert the
interface used, and not to improve and/or the existent users in this
patch.
(Though I think this is good idea for a follow-ups to revisit such
places and either remove consumeError calls or comment each of them to
clarify why it is OK to have them).
Differential revision: https://reviews.llvm.org/D66089
llvm-svn: 368826
The file was modifiedllvm/lib/Object/ELFObjectFile.cpp
The file was modifiedllvm/lib/DebugInfo/Symbolize/SymbolizableObjectFile.cpp
The file was modifiedllvm/lib/Object/MachOObjectFile.cpp
The file was modifiedllvm/tools/llvm-rtdyld/llvm-rtdyld.cpp
The file was modifiedllvm/tools/obj2yaml/coff2yaml.cpp
The file was modifiedllvm/tools/llvm-pdbutil/DumpOutputStyle.cpp
The file was modifiedllvm/tools/llvm-cfi-verify/lib/FileAnalysis.cpp
The file was modifiedllvm/tools/llvm-size/llvm-size.cpp
The file was modifiedllvm/lib/Object/Decompressor.cpp
The file was modifiedllvm/test/Object/invalid.test
The file was modifiedllvm/tools/dsymutil/DwarfLinker.cpp
The file was modifiedllvm/tools/llvm-objdump/MachODump.cpp
The file was modifiedllvm/include/llvm/Object/ObjectFile.h
The file was modifiedllvm/lib/DebugInfo/DWARF/DWARFContext.cpp
The file was modifiedllvm/tools/llvm-readobj/MachODumper.cpp
The file was modifiedllvm/tools/llvm-objdump/llvm-objdump.cpp
The file was modifiedllvm/tools/llvm-objdump/COFFDump.cpp
The file was modifiedllvm/lib/Object/Object.cpp
The file was modifiedllvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyld.cpp
The file was modifiedllvm/tools/llvm-readobj/ELFDumper.cpp
The file was modifiedllvm/lib/ProfileData/Coverage/CoverageMappingReader.cpp
The file was modifiedllvm/lib/ExecutionEngine/RuntimeDyld/Targets/RuntimeDyldCOFFX86_64.h
The file was modifiedllvm/lib/DebugInfo/Symbolize/Symbolize.cpp
The file was modifiedllvm/tools/dsymutil/DwarfStreamer.cpp
The file was modifiedllvm/tools/llvm-pdbutil/InputFile.cpp
The file was modifiedllvm/tools/llvm-nm/llvm-nm.cpp
The file was modifiedllvm/lib/ExecutionEngine/RuntimeDyld/Targets/RuntimeDyldMachOI386.h
The file was modifiedllvm/tools/llvm-dwp/llvm-dwp.cpp
The file was modifiedllvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldELF.cpp
The file was modifiedllvm/tools/llvm-readobj/COFFDumper.cpp
The file was modifiedllvm/lib/Object/COFFObjectFile.cpp
The file was modifiedllvm/tools/llvm-readobj/WasmDumper.cpp
The file was modifiedllvm/lib/ExecutionEngine/RuntimeDyld/Targets/RuntimeDyldMachOARM.h
The file was modifiedllvm/lib/XRay/InstrumentationMap.cpp
The file was modifiedllvm/tools/llvm-cov/TestingSupport.cpp
The file was modifiedllvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldMachO.cpp
The file was modifiedllvm/tools/llvm-readobj/ObjDumper.cpp
The file was modifiedllvm/include/llvm/Object/ELFObjectFile.h
The file was modifiedllvm/tools/llvm-readobj/Win64EHDumper.cpp
The file was modifiedllvm/lib/ExecutionEngine/JITLink/MachOAtomGraphBuilder.cpp
Commit 175261c9ec39c51e48b5f2fa9993765565059f7b by gribozavr
Improved the doc comment for getCommentsInFile
Subscribers: cfe-commits
Tags: #clang
Differential Revision: https://reviews.llvm.org/D66209
llvm-svn: 368827
The file was modifiedclang/include/clang/AST/RawCommentList.h
Commit 544c2e3f8b003d2701872f1fee2177eefa7e6de7 by david.bolvansky
[NFC] Make test more robust
Currently fails on ARMs
llvm-svn: 368828
The file was modifiedclang/test/CodeGen/struct-copy.c
Commit 8bba4798c2e9cf2a4255c6e3d85ced462e0b36b2 by llvm-dev
Fix "not all control paths return a value" MSVC warnings. NFCI.
llvm-svn: 368829
The file was modifiedllvm/lib/Transforms/Coroutines/Coroutines.cpp
Commit 3f40bdb558649e4effdd9e429df6871985333a9c by llvm-dev
Fix "not all control paths return a value" MSVC warning. NFCI.
llvm-svn: 368830
The file was modifiedllvm/lib/Transforms/Coroutines/CoroSplit.cpp
Commit 828a89e24471e191008b63fe44402f3d4121fd09 by llvm-dev
Fix "not all control paths return a value" MSVC warnings. NFCI.
llvm-svn: 368831
The file was modifiedllvm/lib/Transforms/Coroutines/CoroInternal.h
Commit 030409020cd562870fa51f7224a30b5e1a128497 by gribozavr
Removed ToolExecutor::isSingleProcess, it is not used by anything
Subscribers: cfe-commits
Tags: #clang
Differential Revision: https://reviews.llvm.org/D66212
llvm-svn: 368832
The file was modifiedclang/include/clang/Tooling/AllTUsExecution.h
The file was modifiedclang/include/clang/Tooling/StandaloneExecution.h
The file was modifiedclang/unittests/Tooling/ExecutionTest.cpp
The file was modifiedclang/include/clang/Tooling/Execution.h
Commit 4c8deb617208c4780fe2cc0ee58d14383d3a899d by maskray
[IR] Simplify removeDeadConstantUsers. NFC
llvm-svn: 368833
The file was modifiedllvm/lib/IR/Constants.cpp
Commit 9fa2599e9b9cb6fd6bda81f7e3c0d70e7cbad3c6 by jvikstrom
[clangd] Loading TokenColorRules as a class mapping the rules to their
associated clangd TextMate scope index.
Summary: Loads a mapping of the clangd scope lookup table scopes to the
most specific rule with the highest "precedence" on initialize.
Preprocesses into a class so it's simple/fast to access when doing the
actual coloring later.
Reviewers: hokein, ilya-biryukov
Subscribers: MaskRay, jkorous, arphaman, kadircet, cfe-commits
Tags: #clang
Differential Revision: https://reviews.llvm.org/D65856
llvm-svn: 368834
The file was modifiedclang-tools-extra/clangd/clients/clangd-vscode/test/semantic-highlighting.test.ts
The file was modifiedclang-tools-extra/clangd/clients/clangd-vscode/src/semantic-highlighting.ts
Commit 90c2794bfc337338b4e4ec8421c75735e7207e6e by jeremy.morse.llvm
[DebugInfo] MCP: collect and update DBG_VALUEs encountered in local
block
MCP currently uses changeDebugValuesDefReg / collectDebugValues to find
debug users of a register, however those functions assume that all
DBG_VALUEs immediately follow the specified instruction, which isn't
necessarily true. This is going to become very often untrue when we turn
off CodeGenPrepare::placeDbgValues.
Instead of calling changeDebugValuesDefReg on an instruction to change
its debug users, in this patch we instead collect DBG_VALUEs of copies
as we iterate over insns, and update the debug users of copies that are
made dead. This isn't a non-functional change, because MCP will now
update DBG_VALUEs that aren't immediately after a copy, but refer to the
same register. I've hijacked the regression test for PR38773 to test for
this new behaviour, an entirely new test seemed overkill.
Differential Revision: https://reviews.llvm.org/D56265
llvm-svn: 368835
The file was modifiedllvm/lib/CodeGen/MachineCopyPropagation.cpp
The file was modifiedllvm/include/llvm/CodeGen/MachineRegisterInfo.h
The file was modifiedllvm/test/CodeGen/MIR/X86/pr38773.mir
Commit dd53bdbfdec7a179e8fb38008ab2b397572b3a69 by dkszelethus
[analyzer][CFG] Don't track the condition of asserts
Well, what is says on the tin I guess!
Some more changes:
* Move isInevitablySinking() from BugReporter.cpp to CFGBlock's
interface
* Rename and move findBlockForNode() from BugReporter.cpp to
ExplodedNode::getCFGBlock()
Differential Revision: https://reviews.llvm.org/D65287
llvm-svn: 368836
The file was modifiedclang/include/clang/Analysis/CFG.h
The file was modifiedclang/lib/Analysis/CFG.cpp
The file was modifiedclang/lib/StaticAnalyzer/Core/BugReporter.cpp
The file was modifiedclang/lib/StaticAnalyzer/Core/ExplodedGraph.cpp
The file was modifiedclang/test/Analysis/track-control-dependency-conditions.cpp
The file was modifiedclang/lib/StaticAnalyzer/Core/BugReporterVisitors.cpp
Commit b9138bc52bbc4d256810e8c62cc75457a5288d2b by maskray
[ELF][test] Update silent-ignore.test
Some options are implemented now:
--no-warn-common : r263413
--allow-shlib-undefined : r352826
Some are ignored but were not reflected in this test.
llvm-svn: 368837
The file was modifiedlld/test/ELF/silent-ignore.test
Commit b8ee0dd723697c02a171dafc85f2d432e70a6918 by pavel
Revert "Minidump/Windows: Fix module lookup"
Although there is nothing wrong with this patch, the test added here
uncovers a problem in other parts of the code which cause the test to
fail when running under asan. Reverting the patch until I can fix the
underlying issue(s).
This reverts commit r368416.
llvm-svn: 368838
The file was removedlldb/lit/Minidump/Windows/Inputs/find-module.dmp.yaml
The file was removedlldb/lit/Minidump/Windows/find-module.test
The file was removedlldb/lit/Minidump/Windows/Inputs/find-module.exe.yaml
The file was modifiedlldb/source/Plugins/Process/minidump/MinidumpParser.cpp
Commit 13447d3664f3d91cf18d5bc298656fb8db5172c9 by llvm-dev
[X86] Add missing regular 512-bit vXi8 extract subvector cost model
tests
These tests don't cover many cases where the subvectors don't start on
aligned indices, but that can be added later.
llvm-svn: 368839
The file was modifiedllvm/test/Analysis/CostModel/X86/shuffle-extract_subvector.ll
Commit 891ea7ce64a3e7b1c404bff3adb579d8069385df by nicolasweber
gn build: Pre-merge https://reviews.llvm.org/D66195
llvm-svn: 368840
The file was modifiedllvm/utils/gn/build/BUILD.gn
Commit d81a8698762bc0fac0f0c5d6a379349fe8dff9a5 by shauryab98
[Clangd] NFC: Fixed comment typo
llvm-svn: 368841
The file was modifiedclang-tools-extra/clangd/unittests/TweakTesting.h
Commit 38fa1a91686591ecf69c2c90674229af37e8e204 by ibiryukov
[clangd] Print qualifiers of out-of-line definitions in document outline
Summary: To improve the UX around navigating and searching through the
results.
Reviewers: hokein
Reviewed By: hokein
Subscribers: MaskRay, jkorous, arphaman, kadircet, cfe-commits
Tags: #clang
Differential Revision: https://reviews.llvm.org/D66215
llvm-svn: 368842
The file was modifiedclang-tools-extra/clangd/AST.cpp
The file was modifiedclang-tools-extra/clangd/unittests/FindSymbolsTests.cpp
Commit e220c67b7a42e587e9dbca209457ace1a0212f08 by maskray
[ELF] --gdb-index: fix odd variable name cUs after r365730 and replace
lower_bound with partition_point. NFC
llvm-svn: 368845
The file was modifiedlld/ELF/SyntheticSections.cpp
Commit 4894eeecc99d9729259dba54efc207be4bc4ddf5 by lebedev.ri
[SimplifyCFG] Add "safe abs" test from CMSIS DSP 'abs_with_clamp()'
With -phi-node-folding-threshold=3 this branch would get flattened into
select.
See https://reviews.llvm.org/D65148#1629010
llvm-svn: 368847
The file was addedllvm/test/Transforms/SimplifyCFG/safe-abs.ll
Commit 40837e97b199b4d6546df9f8912e14a56c434417 by pavel
raw_ostream: add operator<< overload for std::error_code
Summary: The main motivation for this is unit tests, which contain a
large macro for pretty-printing std::error_code, and this macro is
duplicated in every file that needs to do this. However, the
functionality may be useful elsewhere too.
In this patch I have reimplemented the existing ASSERT_NO_ERROR macros
to reuse the new functionality, but I have kept the macro (as a
one-liner) as it is slightly more readable than ASSERT_EQ(...,
std::error_code()).
Reviewers: sammccall, ilya-biryukov
Subscribers: zturner, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D65643
llvm-svn: 368849
The file was modifiedllvm/unittests/BinaryFormat/TestFileMagic.cpp
The file was modifiedllvm/unittests/Support/ProgramTest.cpp
The file was modifiedllvm/include/llvm/Support/raw_ostream.h
The file was modifiedllvm/unittests/Support/ReplaceFileTest.cpp
The file was modifiedllvm/unittests/Support/ErrorTest.cpp
The file was modifiedllvm/unittests/Support/FileOutputBufferTest.cpp
The file was modifiedllvm/unittests/Support/Path.cpp
The file was modifiedllvm/unittests/Support/Host.cpp
The file was modifiedllvm/lib/Support/raw_ostream.cpp
The file was modifiedllvm/unittests/Support/raw_pwrite_stream_test.cpp
Commit 36ca1e6399feaaee1e007bafa40449fecdba70aa by shauryab98
[Tooling] Added DeclStmtClass to ExtractionSemicolonPolicy
Since the DeclStmt range includes the semicolon, it doesn't need a
semicolon at the end during extraction
llvm-svn: 368850
The file was modifiedclang/test/Refactor/Extract/ExtractionSemicolonPolicy.cpp
The file was modifiedclang/lib/Tooling/Refactoring/Extract/SourceExtraction.cpp
Commit bcd4d59a148a6c3ba5b78941ba07f49562b47128 by hokein
[clangd][vscode] Surface the error when applying tweaks fails
Summary: The current behavior for a failed request is just to log it in
the output panel. When applyTweak fails for whatever reason, users
usually don't get informed (unless they open the output panel and dig
the log).
this patch is to surface these errors by prompting up a message diag.
Reviewers: ilya-biryukov
Subscribers: MaskRay, jkorous, arphaman, kadircet, cfe-commits
Tags: #clang
Differential Revision: https://reviews.llvm.org/D66211
llvm-svn: 368851
The file was modifiedclang-tools-extra/clangd/clients/clangd-vscode/src/extension.ts
Commit 03eacbd489d087142d395b31060f805bc9762cb6 by aaron.smith
Add missing SetID method to fix Windows build
llvm-svn: 368852
The file was modifiedlldb/include/lldb/Host/common/NativeProcessProtocol.h
Commit 571c52af58d91662f2a7f2c7570bab63dee71a53 by dkszelethus
[analyzer][NFC] Prove that we only track the evaluated part of the
condition
...because we're working with a BugReporterVisitor, and the
non-evaluated part of the condition isn't in the bugpath.
Differential Revision: https://reviews.llvm.org/D65290
llvm-svn: 368853
The file was modifiedclang/test/Analysis/track-control-dependency-conditions.cpp
Commit 0d802a4923e6a603aa1ee06d0969a793cc93f858 by pavel
Revert "raw_ostream: add operator<< overload for std::error_code"
This reverts commit r368849, because it breaks some bots (e.g.
llvm-clang-x86_64-win-fast).
It turns out this is not as NFC as we had hoped, because operator== will
consider two std::error_codes to be distinct even though they both hold
"success" values if they have different categories.
llvm-svn: 368854
The file was modifiedllvm/lib/Support/raw_ostream.cpp
The file was modifiedllvm/unittests/Support/raw_pwrite_stream_test.cpp
The file was modifiedllvm/unittests/Support/ProgramTest.cpp
The file was modifiedllvm/unittests/Support/FileOutputBufferTest.cpp
The file was modifiedllvm/unittests/Support/Host.cpp
The file was modifiedllvm/unittests/Support/Path.cpp
The file was modifiedllvm/unittests/Support/ErrorTest.cpp
The file was modifiedllvm/unittests/Support/ReplaceFileTest.cpp
The file was modifiedllvm/include/llvm/Support/raw_ostream.h
The file was modifiedllvm/unittests/BinaryFormat/TestFileMagic.cpp
Commit 8fc095d453a05646e5f96df613152cf1212ef0db by jasonliu.development
[AIX] Add call lowering for parameters that could pass onto FPRs
Summary: This patch adds call lowering functionality to enable passing
parameters onto floating point registers when needed.
Differential Revision: https://reviews.llvm.org/D63654
llvm-svn: 368855
The file was modifiedllvm/lib/Target/PowerPC/PPCISelLowering.cpp
The file was modifiedllvm/lib/Target/PowerPC/PPCSubtarget.h
The file was addedllvm/test/CodeGen/PowerPC/aix_fpr_param.ll
Commit e71db6584d8d8936c667c14c06b87382f5327e58 by Jinsong Ji
[PowerPC][NFC] Consolidate duplicate XX3Form_SetZero and XX3Form_Zero.
Rename one to XX3Form_SameOp, remove the other one.
llvm-svn: 368856
The file was modifiedllvm/lib/Target/PowerPC/PPCInstrFormats.td
The file was modifiedllvm/lib/Target/PowerPC/PPCInstrVSX.td
Commit 8c545168ee4d0b446565c655230c7be2e3d56fe9 by craig.topper
[X86] Add llvm_unreachable to a switch that covers all expected values.
llvm-svn: 368857
The file was modifiedllvm/lib/Target/X86/X86ISelDAGToDAG.cpp
Commit 30d3e9c3952096e80c3c82cf61caa545fc678170 by craig.topper
[X86][CostModel] Adjust the costs of ZERO_EXTEND/SIGN_EXTEND with less
than 128-bit inputs
Now that we legalize by widening, the element types here won't change.
Previously these were modeled as the elements being widened and then the
instruction might become an AND or SHL/ASHR pair. But now they'll become
something like a ZERO_EXTEND_VECTOR_INREG/SIGN_EXTEND_VECTOR_INREG.
For AVX2, when the destination type is legal its clear the cost should
be 1 since we have extend instructions that can produce 256 bit vectors
from less than 128 bit vectors. I'm a little less sure about AVX1 costs,
but I think the ones I changed were definitely too high, but they might
still be too high.
Differential Revision: https://reviews.llvm.org/D66169
llvm-svn: 368858
The file was modifiedllvm/test/Transforms/SLPVectorizer/X86/zext.ll
The file was modifiedllvm/test/Analysis/CostModel/X86/min-legal-vector-width.ll
The file was modifiedllvm/test/Transforms/SLPVectorizer/X86/sext.ll
The file was modifiedllvm/test/Analysis/CostModel/X86/extend.ll
The file was modifiedllvm/test/Analysis/CostModel/X86/cast.ll
The file was modifiedllvm/lib/Target/X86/X86TargetTransformInfo.cpp
The file was modifiedllvm/test/Transforms/SLPVectorizer/X86/cast.ll
Commit af93ca63c3ba7d50e696b20d3c53d9cbf14769b4 by Jinsong Ji
[PowerPC][NFC] Add test for build all one vector with different types.
build-vector-tests.ll is far too big, split such type tests for single
buildvector into new file.
llvm-svn: 368859
The file was addedllvm/test/CodeGen/PowerPC/build-vector-allones.ll
Commit 49661f94c8d07b0db9190261c47138b99a47546b by xiangxdh
[NFC][AIX] Change assertion
Address one left comment on https://reviews.llvm.org/D63547. A minor
change for assertion.
Differential Revision: https://reviews.llvm.org/D63547
llvm-svn: 368860
The file was modifiedllvm/lib/Target/PowerPC/PPCISelDAGToDAG.cpp
Commit ffe91994a941ff549697639c5db3a5cafc2e8194 by craig.topper
[LangRef] Remove opening [ that was missing a closing ] from
call/callbr/invoke syntax.
It looks like this bracket was added when the addrspace was added.
before it. So I think it can jut be removed.
llvm-svn: 368861
The file was modifiedllvm/docs/LangRef.rst
Commit 385a45184482495c9a9bbac6591205816d6767ff by yitzhakm
[libTooling] Fix code to avoid unused-function warning after r368681.
llvm-svn: 368862
The file was modifiedclang/lib/Tooling/Refactoring/Transformer.cpp
Commit bffa4a2b17b12f090059754011ec0bae08f810f4 by david.bolvansky
[NFC] Fix testcase for ARMs
llvm-svn: 368863
The file was modifiedclang/test/CodeGen/struct-copy.c
Commit 3e44d961705f87e09a00550bc9f134682563a0d0 by craig.topper
[X86] Use PSADBW for v8i8 addition reductions.
Improves the 8 byte case from PR42674.
Differential Revision: https://reviews.llvm.org/D66069
llvm-svn: 368864
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.cpp
The file was modifiedllvm/test/CodeGen/X86/vector-reduce-add.ll
Commit 7fce867856934ae09bfd3d4dac0552249e1d03f2 by llvm-dev
Fix cppcheck + MSVC analyzer uninitialized member variable warning.
NFCI.
llvm-svn: 368865
The file was modifiedllvm/include/llvm/CodeGen/TargetLoweringObjectFileImpl.h
Commit 2be59170d433be05204992838a1aadbc79d5e0d1 by kostyak
[scudo][standalone] Add more stats to mallinfo
Summary: Android requires additional stats in mallinfo. While we can
provide right away the number of bytes mapped (Primary+Secondary), there
was no way to get the number of free bytes (only makes sense for the
Primary since the Secondary unmaps everything on deallocation).
An approximation could be `StatMapped - StatAllocated`, but since we are
mapping in `1<<17` increments for the 64-bit Primary, it's fairly
inaccurate.
So we introduce `StatFree` (note it's `Free`, not `Freed`!), which keeps
track of the amount of Primary blocks currently unallocated.
Reviewers: cferris, eugenis, vitalybuka, hctim, morehouse
Reviewed By: morehouse
Subscribers: delcypher, #sanitizers, llvm-commits
Tags: #llvm, #sanitizers
Differential Revision: https://reviews.llvm.org/D66112
llvm-svn: 368866
The file was modifiedcompiler-rt/lib/scudo/standalone/tests/wrappers_c_test.cpp
The file was modifiedcompiler-rt/lib/scudo/standalone/mutex.h
The file was modifiedcompiler-rt/lib/scudo/standalone/stats.h
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/local_cache.h
The file was modifiedcompiler-rt/lib/scudo/standalone/wrappers_c.inc
Commit 2b1d42541f20ce919c7841328934f64366e39d7c by mclow.lists
Rework recursive_timed_mutex so that it uses __thread_id instead of
using the lower-level __libcpp_thread_id. This is prep for fixing
PR42918. Reviewed as https://reviews.llvm.org/D65895
llvm-svn: 368867
The file was modifiedlibcxx/include/mutex
The file was modifiedlibcxx/include/__threading_support
The file was modifiedlibcxx/include/thread
The file was modifiedlibcxx/src/mutex.cpp
Commit de0133eaa2c53cf2d465578f234bd137ab3d68cb by tlively
[WebAssembly] Stop unrolling SIMD shifts since they are fixed in V8
Summary: Fixes PR42973. Tests don't change because simd-arith.ll tests
behavior on unimplemented-simd128, which does not include any temporary
workarounds such as the one removed in this revision.
Reviewers: aheejin
Subscribers: dschuff, sbc100, jgravelle-google, hiraditya, sunfish,
dmgreen, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D66166
llvm-svn: 368868
The file was modifiedllvm/lib/Target/WebAssembly/WebAssemblyISelLowering.cpp
Commit 25e021ad5fc5d0328caf75e4b54cb4daa797bdff by simon
[mips] Split long lines in the test case file. NFC
llvm-svn: 368869
The file was modifiedllvm/test/CodeGen/Mips/blockaddr.ll
The file was modifiedllvm/test/CodeGen/Mips/global-address.ll
Commit dc8dcb615832e6e4bf03b9381130c7223668078a by simon
[mips] Remove redundant case in the test. NFC
llvm-svn: 368870
The file was modifiedllvm/test/CodeGen/Mips/blockaddr.ll
Commit bfe0c376014ec3da6a36d22524a43c75ab83e659 by xazax.hun
[LifetimeAnalysis] Fix false negatives of statement local lifetime
analysis for some STL implementation
Differential Revision: https://reviews.llvm.org/D66152
llvm-svn: 368871
The file was modifiedclang/test/Sema/warn-lifetime-analysis-nocfg.cpp
The file was modifiedclang/lib/Sema/SemaInit.cpp
Commit 86649980464ef799a7cec900c8b11dd2a7c15a15 by aaron.smith
Add missing NativeProcessFactory for lldb-server on Windows
llvm-svn: 368872
The file was modifiedlldb/tools/lldb-server/lldb-gdbserver.cpp
Commit cc2bebe039374d6f0c8251ac322f8f7148d85950 by isanbard
Ignore indirect branches from callbr.
Summary: We can't speculate around indirect branches: indirectbr and
invoke. The callbr instruction needs to be included here.
Reviewers: nickdesaulniers, manojgupta, chandlerc
Reviewed By: chandlerc
Subscribers: llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D66200
llvm-svn: 368873
The file was addedllvm/test/Transforms/SpeculateAroundPHIs/pr42991.ll
The file was modifiedllvm/lib/Transforms/Scalar/SpeculateAroundPHIs.cpp
Commit a80a3a2b239591f62422686dae9071df89a3b339 by chris.bieneman
Document clang-cpp in the release notes for clang
This patch adds a line in the release notes about the new clang-cpp
library and the CMake option to force clang to link against it.
llvm-svn: 368874
The file was modifiedclang/docs/ReleaseNotes.rst
Commit 0e0fbae1a432d614a216f750c9afc489d579f717 by david.bolvansky
[BuildLibCalls] Noalias annotation
Summary: I think this is better solution than annotating callsites in
IC/SLC.
Reviewers: jdoerfert
Reviewed By: jdoerfert
Subscribers: MaskRay, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D66217
llvm-svn: 368875
The file was modifiedllvm/test/Transforms/InstCombine/memcpy-from-global.ll
The file was modifiedllvm/test/Transforms/InstCombine/memcpy.ll
The file was modifiedllvm/lib/Transforms/Utils/SimplifyLibCalls.cpp
The file was modifiedllvm/test/Transforms/InstCombine/memmove.ll
The file was modifiedllvm/test/Analysis/TypeBasedAliasAnalysis/memcpyopt.ll
The file was modifiedllvm/test/Transforms/InstCombine/stpcpy-1.ll
The file was modifiedllvm/test/Transforms/InstCombine/memcpy-to-load.ll
The file was modifiedllvm/test/Transforms/InstCombine/sprintf-1.ll
The file was modifiedllvm/test/Other/cgscc-devirt-iteration.ll
The file was modifiedllvm/test/Transforms/MemCpyOpt/memcpy-to-memset-with-lifetimes.ll
The file was removedllvm/test/Transforms/InstCombine/annotate-noalias.ll
The file was modifiedllvm/test/Transforms/InstCombine/memcpy_chk-1.ll
The file was modifiedllvm/test/Transforms/InstCombine/strncpy_chk-1.ll
The file was modifiedllvm/test/Transforms/InstCombine/memcpy-1.ll
The file was modifiedllvm/test/Transforms/InstCombine/strcpy_chk-1.ll
The file was modifiedllvm/test/Transforms/InferFunctionAttrs/annotate.ll
The file was modifiedllvm/test/Transforms/InstCombine/stpcpy_chk-1.ll
The file was modifiedllvm/test/Other/cgscc-libcall-update.ll
The file was modifiedllvm/lib/Transforms/Utils/BuildLibCalls.cpp
The file was modifiedllvm/test/Transforms/InstCombine/mem-deref-bytes.ll
The file was modifiedllvm/test/Transforms/InstCombine/objsize.ll
Commit 8f5c1c0148693fca20cb419576931f1c802190f5 by david.bolvansky
[NFC] Updated tests after r368875
llvm-svn: 368876
The file was modifiedclang/test/CodeGen/tbaa-struct.cpp
Commit 4ae5efbe662e58836ac3a4f26467780990ca0ac2 by llvm-dev
Fix cppcheck + MSVC analyzer uninitialized member variable warning.
NFCI.
llvm-svn: 368877
The file was modifiedllvm/include/llvm/IR/DiagnosticInfo.h
Commit aa3855694ff45fc51bd71774c8bb15738b83ef16 by erik.pilkington
[Sema][ObjC] Fix a -Wformat false positive with localizedStringForKey
Only honour format_arg attributes on -[NSBundle localizedStringForKey]
when its argument has a format specifier in it, otherwise its likely to
just be a key to fetch localized strings.
Fixes rdar://23622446
Differential revision: https://reviews.llvm.org/D27165
llvm-svn: 368878
The file was modifiedclang/lib/Sema/SemaChecking.cpp
The file was modifiedclang/lib/AST/PrintfFormatString.cpp
The file was modifiedclang/include/clang/Basic/IdentifierTable.h
The file was modifiedclang/lib/Basic/IdentifierTable.cpp
The file was modifiedclang/include/clang/AST/FormatString.h
The file was modifiedclang/test/SemaObjC/format-strings-objc.m
Commit c0a9b1edca4192acc6128e92cdd17a5553118745 by Jonas Devlieghere
[DebugLine] Improve path handling.
After switching over LLDB's line table parser to libDebugInfo, we
noticed two regressions on the Windows bot. The problem is that when
obtaining a file from the line table prologue, we append paths without
specifying a path style. This leads to incorrect results on Windows for
debug info containing Posix paths:
  0x0000000000201000: /tmp\b.c, is_start_of_statement = TRUE
This patch is an attempt to fix that by guessing the path style whenever
possible.
Differential revision: https://reviews.llvm.org/D66227
llvm-svn: 368879
The file was modifiedlldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp
The file was modifiedllvm/lib/DebugInfo/DWARF/DWARFDebugLine.cpp
Commit 3555af7120b9bbab05c335546a996950cedc286c by Louis Dionne
[libc++] Do not define _LIBCPP_CLANG_VER for non-LLVM Clang
In r292833, we started defining _LIBCPP_CLANG_VER to 0 for Apple Clang.
The result is that AppleClang is detected as being a very old version of
LLVM Clang (version 0), which is obviously incorrect.
I believe this was added so that we don't have to check whether
_LIBCPP_CLANG_VER is defined prior to comparing it with a number
(which can trigger a warning). This commit also fixes the two places
that use the macro correspondingly.
llvm-svn: 368880
The file was modifiedlibcxx/include/__config
Commit 740f69b91b4ca042f1c9c63ac73fff9dfc7746b0 by puyan
[NFC][clang] Moving argument handling: Driver::BuildActions ->
handleArguments
This patch simply moves code that already exists into a new function.
Specifically I think it will make the BuildActions code for building a
clang job pipeline easier to read and work with.
Differential Revision: https://reviews.llvm.org/D66058
llvm-svn: 368881
The file was modifiedclang/include/clang/Driver/Driver.h
The file was modifiedclang/lib/Driver/Driver.cpp
Commit 619172a8184ee6a1326588d916579fcabcfcf43a by Louis Dionne
[libc++] Enable <chrono> ""d and ""y literals for AppleClang 10 and up
AppleClang supports those literals starting in version 10.0.1.
llvm-svn: 368882
The file was modifiedlibcxx/include/__config
The file was modifiedlibcxx/test/std/utilities/time/time.cal/time.cal.day/time.cal.day.nonmembers/literals.pass.cpp
The file was modifiedlibcxx/test/std/utilities/time/time.cal/time.cal.year/time.cal.year.nonmembers/literals.pass.cpp
Commit 92541e359e4bdd2e9a149a2bb7d1519f77244655 by dkszelethus
[CFG] Introduce CFGElementRef, a wrapper that knows it's position in a
CFGBlock
Previously, collecting CFGElements in a set was practially impossible,
because both CFGBlock::operator[] and both the iterators returned it by
value. One workaround would be to collect the iterators instead, but
they don't really capture the concept of an element, and elements from
different iterator types are incomparable.
This patch introduces CFGElementRef, a wrapper around a (CFGBlock,
Index) pair, and a variety of new iterators and iterator ranges to solve
this problem.
I guess you could say that this patch took a couple iterations to get
right :^)
Differential Revision: https://reviews.llvm.org/D65196
llvm-svn: 368883
The file was modifiedclang/include/clang/Analysis/CFG.h
The file was modifiedclang/unittests/Analysis/CFGTest.cpp
The file was modifiedclang/lib/Analysis/CFG.cpp
Commit f94460d4b64c3748eab0334262b27d756dade84e by david.bolvansky
[SLC] Dereferenceable annonation - handle valid null pointers
Reviewers: jdoerfert, reames
Reviewed By: jdoerfert
Subscribers: llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D66161
llvm-svn: 368884
The file was addedllvm/test/Transforms/InstCombine/mem-deref-bytes-addrspaces.ll
The file was modifiedllvm/test/Transforms/InstCombine/mem-deref-bytes.ll
The file was modifiedllvm/lib/Transforms/Utils/SimplifyLibCalls.cpp
Commit a5f5aad568bb7a91ceee47641f3076ac339ef8c7 by z.zoelec2
This commit removes std::shared_ptr::make_shared and
std::shared_ptr::allocate_shared as they are not part of the standard.
This commit also adds the helper function "__create_with_cntrl_block"
which std::allocate_shared and std::make_shared have been updated to
use.
llvm-svn: 368885
The file was modifiedlibcxx/include/memory
Commit 04ddff4cbc91be6a2dfd4dbbf3563762c4895d68 by lebedev.ri
[InstCombine][NFC] Tests for 'try to reuse constant from select in
comparison'
https://rise4fun.com/Alive/THl
llvm-svn: 368886
The file was addedllvm/test/Transforms/InstCombine/reuse-constant-from-select-in-icmp.ll
Commit b13c8ca9ebc4bfa4a916c46ff1415d3092be136c by JF Bastien
Move to C++14
Summary: I just bumped the minimum compiler versions to support C++14 in
D66188.
Following [our
process](http://llvm.org/docs/DeveloperPolicy.html#toolchain) and [our
previous
agreement](http://lists.llvm.org/pipermail/llvm-dev/2019-January/129452.html),
I'm now officially bumping the C++ version to 14 and updating the
documentation.
Subscribers: mgorny, jkorous, dexonsmith, llvm-commits, chandlerc,
thakis, EricWF, jyknight, lhames, JDevlieghere
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D66195
llvm-svn: 368887
The file was modifiedllvm/docs/CodingStandards.rst
The file was modifiedllvm/cmake/modules/HandleLLVMOptions.cmake
The file was modifiedllvm/include/llvm/Support/type_traits.h
The file was modifiedllvm/include/llvm/Support/Compiler.h
Commit 40f88d5f62f9d54f4158201c1fbd546d3271f5ea by llvm-dev
Fix cppcheck + MSVC analyzer uninitialized member variable warning.
NFCI.
llvm-svn: 368888
The file was modifiedllvm/include/llvm/Support/GenericDomTree.h
Commit f6db75c39b413bc7c68f6205f2ace5f756eb3258 by JF Bastien
Don't explicitly check for C++14
MSVC is weird about __cplusplus. The check I added in D66195 confuses
it.
llvm-svn: 368889
The file was modifiedllvm/include/llvm/Support/Compiler.h
Commit 12f5a2807ef4dc8c82be29586a067aafa8aa41f4 by JF Bastien
Remove now useless C++1y flag
As of D66195 we support C++14 by default.
llvm-svn: 368890
The file was modifiedllvm/cmake/modules/HandleLLVMOptions.cmake
Commit df7022825c0e803efce34f11a3670b469c2901e0 by twoh
[DebugInfo] Consider debug label scope has an extra lexical block file
Summary: There are places where a case that debug label scope has an
extra lexical block file is not considered properly. The modified test
won't pass without this patch.
Reviewers: aprantl, HsiangKai
Subscribers: hiraditya, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D66187
llvm-svn: 368891
The file was modifiedllvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp
The file was modifiedllvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
The file was modifiedllvm/test/DebugInfo/Generic/debug-label.ll
Commit 3f9d0446864015c7856698fcacafa56aa8f4c9a3 by JF Bastien
Match if / elseif properly
My last commit fumbled it.
llvm-svn: 368892
The file was modifiedllvm/cmake/modules/HandleLLVMOptions.cmake
Commit 0eac2a296398e0ae12c4dbf5ae6466cb8358b308 by Matthew.Arsenault
InferAddressSpaces: Remove unnecessary check for ConstantInt
The IR is invalid if this isn't a constant since immarg was added.
llvm-svn: 368893
The file was modifiedllvm/lib/Transforms/Scalar/InferAddressSpaces.cpp
Commit dbc1f207fa726bde99a71fd73f76659f63ed4947 by Matthew.Arsenault
InferAddressSpaces: Move target intrinsic handling to TTI
I'm planning on handling intrinsics that will benefit from checking the
address space enums. Don't bother moving the address collection for now,
since those won't need th enums.
llvm-svn: 368895
The file was modifiedllvm/include/llvm/Analysis/TargetTransformInfoImpl.h
The file was modifiedllvm/include/llvm/Analysis/TargetTransformInfo.h
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPUTargetTransformInfo.cpp
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPUTargetTransformInfo.h
The file was modifiedllvm/lib/Transforms/Scalar/InferAddressSpaces.cpp
The file was modifiedllvm/include/llvm/CodeGen/BasicTTIImpl.h
The file was modifiedllvm/lib/Analysis/TargetTransformInfo.cpp
Commit ef56c7cdf01e322b063599dec6ded7e436415463 by JF Bastien
Un-break the bots
Some bots can't find is_final despite it being in C++14. Leave the code
as it was for now, fix it later when the bots are happy.
llvm-svn: 368896
The file was modifiedllvm/include/llvm/Support/type_traits.h
Commit a8e070366a4df0106a743383616b9194bd129760 by chris.bieneman
[CMake] Fix cache invalidation of LLVM_CXX_STD
This cleans up fallout from https://reviews.llvm.org/D66195.
llvm-svn: 368897
The file was modifiedllvm/cmake/modules/HandleLLVMOptions.cmake
Commit 6cca3ad43e6df866ec38708f2e20331a59d275b6 by listmail
[RLEV] Rewrite loop exit values for multiple exit loops w/o overall loop
exit count
We already supported rewriting loop exit values for multiple exit loops,
but if any of the loop exits were not computable, we gave up on all loop
exit values. This patch generalizes the existing code to handle
individual computable loop exits where possible.
As discussed in the review, this is a starting point for figuring out a
better API.  The code is a bit ugly, but getting it in lets us test as
we go. 
Differential Revision: https://reviews.llvm.org/D65544
llvm-svn: 368898
The file was modifiedllvm/lib/Transforms/Scalar/IndVarSimplify.cpp
The file was addedllvm/test/Transforms/IndVarSimplify/rlev-add-me.ll
The file was modifiedllvm/test/Transforms/LoopUnroll/scevunroll.ll
Commit 14230f99262df66a5dbd4dc5de5d55807c5c6d05 by Jan Korous
[Support][NFC] Fix error message for posix_spawn_file_actions_addopen
failed call
Seems like a copy-paste from couple lines above.
llvm-svn: 368899
The file was modifiedllvm/lib/Support/Unix/Program.inc
Commit 37cd0dd26a973362e0539e9ab83d1cd501c1e4ac by Jinsong Ji
[PowerPC][NFC] Remove duplicate tests in build-vector-test.ll
AllOnes has been split into build-vector-allones.ll.
llvm-svn: 368900
The file was modifiedllvm/test/CodeGen/PowerPC/build-vector-tests.ll
Commit 0b864bb04322d06a6953f56befe415e29519cbf7 by Matthew.Arsenault
AMDGPU: Reduce number of registers in test
Once the failure this is testing is fixed, this would fail due to using
too many registers.
llvm-svn: 368901
The file was modifiedllvm/test/CodeGen/AMDGPU/branch-relax-spill.ll
Commit c2649928533b1f943e996893b71c2f13c7cd8c79 by JF Bastien
Revert "Un-break the bots"
Looks like the problem was due to the cmake cache, Chris fixed in
r368897.
llvm-svn: 368902
The file was modifiedllvm/include/llvm/Support/type_traits.h
Commit f8be476f0cde4983040cd281950adc64e70b34fd by a.bataev
[OPENMP]Support for non-rectangular loops.
Added basic support for non-rectangular loops. It requires an additional
analysis of min/max boundaries for non-rectangular loops. Since only
linear dependency is allowed, we can do this analysis.
llvm-svn: 368903
The file was modifiedclang/lib/AST/StmtOpenMP.cpp
The file was modifiedclang/lib/Serialization/ASTReaderStmt.cpp
The file was modifiedclang/lib/Sema/SemaOpenMP.cpp
The file was modifiedclang/lib/CodeGen/CGStmtOpenMP.cpp
The file was modifiedclang/include/clang/AST/StmtOpenMP.h
The file was modifiedclang/test/OpenMP/for_loop_messages.cpp
The file was modifiedclang/test/OpenMP/parallel_messages.cpp
The file was modifiedclang/test/OpenMP/for_codegen.cpp
The file was modifiedclang/lib/Serialization/ASTWriterStmt.cpp
Commit 4ee1376dc62600ec8a489e326e8bacebc2f9ac30 by rupprecht
[lldb][NFC] Remove unused function
llvm-svn: 368904
The file was modifiedlldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp
Commit ecccf29e6c79a2c899265d3bf192d941dff1d2de by spatel
[SDAG] move variable closer to use; NFC
llvm-svn: 368905
The file was modifiedllvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
Commit da0435a6900731a9a31330fdb55c4f46f4949060 by dtemirbulatov
[SLP][NFC] Use pointers to address to ScalarToTreeEntry elements,
instead of indexes.
llvm-svn: 368906
The file was modifiedllvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
Commit 0e85f18ded9c03b8b41931cec7ad16d104ec4c14 by erich.keane
Add support in CMake to statically link the C++ standard library.
It is sometimes useful to have the C++ standard library linked into the
assembly when compiling clang, particularly when distributing a compiler
onto systems that don't have a copy of stdlibc++ or libc++ installed.
This functionality should work with either GCC or Clang as the host
compiler, though statically linking libc++ (as may be required for
licensing purposes) is only possible if the host compiler is Clang with
a copy of libc++ available.
Differential Revision: https://reviews.llvm.org/D65603
llvm-svn: 368907
The file was modifiedllvm/CMakeLists.txt
The file was modifiedllvm/docs/CMake.rst
The file was modifiedllvm/cmake/modules/HandleLLVMStdlib.cmake
Commit 6ff2a1c878eb8045e7a4e8ca0b80b76976050002 by JF Bastien
MathExtras.h: don't check for unsupported GCC versions
llvm-svn: 368908
The file was modifiedllvm/include/llvm/Support/MathExtras.h
Commit ee6f3dd14dec0548c7aaf3c2461ff0998c70d1f6 by JF Bastien
SwapByteOrder.h: don't check for unsupported GCC versions
llvm-svn: 368909
The file was modifiedllvm/include/llvm/Support/SwapByteOrder.h
Commit 9953c74fb65786930f6dec33f9e49473966410e3 by JF Bastien
Use std::is_final directly
The workaround isn't needed anymore because all toolchains should
support it.
llvm-svn: 368910
The file was modifiedllvm/include/llvm/Support/TrailingObjects.h
The file was modifiedllvm/include/llvm/Support/type_traits.h
Commit b4aebff4f1a6891c31f4f3bb54cdd42c00d5112a by Louis Dionne
[libc++] Mark std::tuple CTAD test as failing on AppleClang 9
Like CTAD for std::unordered_set, AppleClang 9's support for CTAD is
insufficient. I suspect the corresponding LLVM Clang is broken too, but
we don't seem to have testers using that Clang.
llvm-svn: 368911
The file was modifiedlibcxx/test/std/utilities/tuple/tuple.tuple/tuple.cnstr/deduct.pass.cpp
Commit 6169a730886b64c7b7aa069a019fd1dc032b61d8 by diegoaat97
[clang-doc] Add missing check in tests
Path is now checked when comparing two Infos in the unit tests.
Differential Revision: https://reviews.llvm.org/D66124
llvm-svn: 368912
The file was modifiedclang-tools-extra/unittests/clang-doc/ClangDocTest.cpp
The file was modifiedclang-tools-extra/unittests/clang-doc/SerializeTest.cpp
The file was modifiedclang-tools-extra/clang-doc/Representation.h
Commit a8ba919c01df9e1d9792c8de2347411f3439b45a by spatel
[x86] add tests for fadd reduction; NFC
More coverage for D66236.
llvm-svn: 368913
The file was modifiedllvm/test/CodeGen/X86/haddsub.ll
Commit 3f274d4a5596a72a9d1d3caac4a0a8db70c61c1a by Louis Dionne
[libc++] Mark <chrono> test as unsupported on AppleClang 9
llvm-svn: 368914
The file was modifiedlibcxx/test/std/utilities/time/time.hms/hhmmss.fail.cpp
Commit 376f64225288df2565e06e92d53d71f54cebf8c2 by diegof30
[Bugpoint redesign] Reduced scope of variables in Delta implementation
Summary: This diff also changed the check in `Delta.cpp` to verify
interesting-ness, so it exits when the input isn't interesting
Subscribers: llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D66251
llvm-svn: 368915
The file was modifiedllvm/tools/llvm-reduce/deltas/Delta.cpp
Commit 2e80d01fa7dc36c5f2533a363c6c0680f7896dc5 by mclow.lists
Fix thread comparison by making sure we never pass our special 'not a
thread' value to the underlying implementation. Fixes PR#42918.
llvm-svn: 368916
The file was modifiedlibcxx/src/mutex.cpp
The file was modifiedlibcxx/include/__threading_support
Commit c17705b7fb192fb03d9f2a540bc918f19f965225 by Stanislav.Mekhanoshin
[AMDGPU] Do not assume a default GCN target
Differential Revision: https://reviews.llvm.org/D66246
llvm-svn: 368917
The file was modifiedclang/test/Driver/amdgpu-mcpu.cl
The file was modifiedclang/lib/Basic/Targets/AMDGPU.cpp
Commit d1ffcd07456bc8b64056eeec223e87b48fca93b9 by diegof30
[Bugpoint redesign] Added Pass to Remove Global Variables
Summary: This pass tries to remove Global Variables, as well as their
derived uses. For example if a variable `@x` is used by `%call1` and
`%call2`, both these uses and the definition of `@x` are deleted.
Moreover if `%call1` or `%call2` are used elsewhere those uses are also
deleted, and so on recursively.
I'm still uncertain if this pass should remove derived uses, I'm open to
suggestions.
Subscribers: mgorny, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D64176
llvm-svn: 368918
The file was addedllvm/tools/llvm-reduce/deltas/ReduceGlobalVars.cpp
The file was modifiedllvm/tools/llvm-reduce/DeltaManager.h
The file was addedllvm/tools/llvm-reduce/deltas/ReduceGlobalVars.h
The file was addedllvm/test/Reduce/Inputs/remove-global-vars.py
The file was modifiedllvm/test/Reduce/remove-funcs.ll
The file was modifiedllvm/tools/llvm-reduce/CMakeLists.txt
The file was addedllvm/test/Reduce/remove-global-vars.ll
Commit 710ebb03ed52993e5218f4a2a67ced5f5229ba8f by jdoerfert
[Attributor] Use IRPosition consistently
Summary: The next attempt to clean up the Attributor interface before we
grow it further.
Before, we used a combination of two values (associated + anchor) and an
argument number (or -1) to determine a location. This was very fragile.
The new system uses exclusively IR positions and we restrict the
generation of IR positions to special constructor methods that verify
internal constraints we have. This will catch misuse early.
The auto-conversion, e.g., in getAAFor, is now performed through the
SubsumingPositionIterator. This iterator takes an IR position and allows
to visit all IR positions that "subsume" the given one, e.g., function
attributes "subsume" argument attributes of that function. For a
detailed breakdown see the class comment of SubsumingPositionIterator.
This patch also introduces the IRPosition::getAttrs() to extract IR
attributes at a certain position. The method knows how to look up in
different positions that are equivalent, e.g., the argument position for
call site arguments. We also introduce three new positions kinds such
that we have all IR positions where attributes can be placed and one for
"floating" values.
Reviewers: sstefan1, uenoku
Subscribers: hiraditya, bollu, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D65977
llvm-svn: 368919
The file was modifiedllvm/lib/Transforms/IPO/Attributor.cpp
The file was modifiedllvm/include/llvm/Transforms/IPO/Attributor.h
Commit 66214b581c4357748fdcad9e824a70bd9b7187aa by Raphael Isemann
Revert "[lldb] Reinstate original guard variable check"
It seems this breaks the following tests:
   lldb-Suite ::
expression_command/call-function/TestCallUserDefinedFunction.py
   lldb-Suite :: expression_command/rdar42038760/TestScalarURem.py
Let's revert this patch and wait until we find an actual issue that
could be fixed by also doing the guard variable check on Windows.
llvm-svn: 368920
The file was modifiedlldb/source/Plugins/ExpressionParser/Clang/IRForTarget.cpp
Commit 9a1a1f96d9cda223252ac7c868426a326b90d647 by jdoerfert
[Attributor] Do not update or manifest dead attributes
Summary: If the associated context instruction is assumed dead we do not
need to update or manifest the state.
Reviewers: sstefan1, uenoku
Subscribers: hiraditya, bollu, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D66116
llvm-svn: 368921
The file was modifiedllvm/lib/Transforms/IPO/Attributor.cpp
The file was modifiedllvm/include/llvm/Transforms/IPO/Attributor.h
Commit def9928204e76b33cac8a98d54e995b7a6bb145d by jdoerfert
[Attributor] Use liveness during the creation of AAReturnedValues
Summary: As one of the first attributes, and one of the complex ones,
AAReturnedValues was not using liveness but we filtered the result after
the fact. This change adds liveness usage during the creation. The
algorithm is also improved and shorter.
The new algorithm will collect returned values over time using the
generic facilities that work with liveness already, e.g.,
genericValueTraversal which does not look at dead PHI node predecessors.
A test to show how this leads to better results is included.
Note: Unresolved calls and resolved calls are now tracked explicitly.
Reviewers: uenoku, sstefan1
Subscribers: hiraditya, bollu, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D66120
llvm-svn: 368922
The file was modifiedllvm/include/llvm/Transforms/IPO/Attributor.h
The file was modifiedllvm/test/Transforms/FunctionAttrs/arg_returned.ll
The file was modifiedllvm/lib/Transforms/IPO/Attributor.cpp
Commit 1222cfd5fee3db3d78f38cdebf11e67baffa1989 by aemerson
[AArch64][GlobalISel] Custom selection for s8 load acquire.
Implement this single atomic load instruction so that we can compile
stack protector code.
Differential Revision: https://reviews.llvm.org/D66245
llvm-svn: 368923
The file was modifiedllvm/lib/Target/AArch64/AArch64InstructionSelector.cpp
The file was addedllvm/test/CodeGen/AArch64/GlobalISel/select-atomic-load-store.mir
Commit 6a1274a52e500537f498d7cd3fb3fae06e5087c0 by jdoerfert
[Attributor] Use the AANoNull attribute directly in AADereferenceable
Summary: Instead of constantly keeping track of the nonnull status with
the dereferenceable information we can simply query the nonnull
attribute whenever we need the information (debug + manifest).
Reviewers: sstefan1, uenoku
Subscribers: hiraditya, bollu, jfb, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D66113
llvm-svn: 368924
The file was modifiedllvm/lib/Transforms/IPO/Attributor.cpp
The file was modifiedllvm/include/llvm/Transforms/IPO/Attributor.h
Commit e1e844d6b0997b58625a59ab79d2f9aaf9c71bfd by jdoerfert
[Attributor][NFC] Add merge/join/clamp operators to the IntegerState
Differential Revision: https://reviews.llvm.org/D66146
llvm-svn: 368925
The file was modifiedllvm/include/llvm/Transforms/IPO/Attributor.h
The file was modifiedllvm/lib/Transforms/IPO/Attributor.cpp
Commit e7ea06b7d27b830e76be4c65498b54288daed05c by craig.topper
[SelectionDAGBuilder] Teach gather/scatter getUniformBase to look
through vector zeroinitializer indices in addition to scalar zeroes.
llvm-svn: 368926
The file was modifiedllvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
The file was modifiedllvm/test/CodeGen/X86/masked_gather_scatter.ll
Commit 17b578bc758a6b27792d88b0a8adb1582985cf04 by jdoerfert
[Attributor][NFC] Introduce statistics macros for new positions
llvm-svn: 368927
The file was modifiedllvm/lib/Transforms/IPO/Attributor.cpp
Commit 4395b31d99577a0e753403426bca761482a58a52 by jdoerfert
[Attributor][NFC] Try to eliminate warnings (debug build + fall through)
llvm-svn: 368928
The file was modifiedllvm/lib/Transforms/IPO/Attributor.cpp
Commit 1bebc22bd94d44214bbd8a2dad10736c7c5e205b by M.Gehre
[LifetimeAnalysis] Support std::stack::top() and std::optional::value()
Summary: Diagnose dangling pointers that come from std::stack::top() and
std::optional::value().
Reviewers: gribozavr
Subscribers: cfe-commits, xazax.hun
Tags: #clang
Differential Revision: https://reviews.llvm.org/D66164
llvm-svn: 368929
The file was modifiedclang/test/Sema/warn-lifetime-analysis-nocfg.cpp
The file was modifiedclang/lib/Sema/SemaInit.cpp
Commit 7b0515176b15715e554cf46f896eaf07da7b49f0 by listmail
[SCEV] Rename getMaxBackedgeTakenCount to
getConstantMaxBackedgeTakenCount [NFC]
llvm-svn: 368930
The file was modifiedllvm/lib/Transforms/Scalar/IndVarSimplify.cpp
The file was modifiedllvm/lib/Transforms/Scalar/PlaceSafepoints.cpp
The file was modifiedllvm/include/llvm/Analysis/ScalarEvolution.h
The file was modifiedllvm/lib/Analysis/ScalarEvolution.cpp
The file was modifiedllvm/lib/Transforms/Scalar/LoopDeletion.cpp
Commit 5304b72a81acca7e0d9c5cdf5f0d6705a310925b by jdoerfert
[Attributor][NFC] Make debug output consistent
llvm-svn: 368931
The file was modifiedllvm/lib/Transforms/IPO/Attributor.cpp
Commit 1737f71322e3d440dcee74ef06640ad01945f3b9 by rupprecht
[docs] Fix sphinx doc generation errors
Summary: Errors fixed:
- GettingStarted: Duplicate explicit target name: "cmake"
- GlobalISel: Unexpected indentation
- LoopTerminology: Explicit markup ends without a blank line; unexpected
unindent
- ORCv2: Definition list ends without a blank line; unexpected unindent
- Misc: document isn't included in any toctree
Verified that a clean docs build (`rm -rf docs/ && ninja
docs-llvm-html`) passes with no errors. Spot checked the individual
pages to make sure they look OK.
Reviewers: thakis, dsanders
Reviewed By: dsanders
Subscribers: arphaman, llvm-commits, lhames, rovka, dsanders, reames
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D66183
llvm-svn: 368932
The file was modifiedllvm/docs/ORCv2.rst
The file was modifiedllvm/docs/tutorial/index.rst
The file was modifiedllvm/docs/GlobalISel.rst
The file was modifiedllvm/docs/LoopTerminology.rst
The file was modifiedllvm/docs/index.rst
The file was modifiedllvm/docs/GettingStarted.rst
Commit a8f3ae7c9cefa8296d119f92ca444087cdccf712 by Jonas Devlieghere
[LLDB] Migrate llvm::make_unique to std::make_unique
Now that we've moved to C++14, we no longer need the llvm::make_unique
implementation from STLExtras.h. This patch is a mechanical replacement
of (hopefully) all the llvm::make_unique instances across the monorepo.
Differential revision: https://reviews.llvm.org/D66259
llvm-svn: 368933
The file was modifiedlldb/source/Breakpoint/BreakpointOptions.cpp
The file was modifiedlldb/unittests/tools/lldb-server/tests/TestClient.cpp
The file was modifiedlldb/source/API/SBAddress.cpp
The file was modifiedlldb/source/Plugins/ObjectFile/PECOFF/ObjectFilePECOFF.cpp
The file was modifiedlldb/unittests/tools/lldb-server/tests/MessageObjects.cpp
The file was modifiedlldb/source/API/SBTarget.cpp
The file was modifiedlldb/source/Plugins/Process/Windows/Common/NativeRegisterContextWindows_x86_64.cpp
The file was modifiedlldb/source/Plugins/SymbolFile/NativePDB/CompileUnitIndex.cpp
The file was modifiedlldb/source/Target/Platform.cpp
The file was modifiedlldb/source/Expression/IRExecutionUnit.cpp
The file was modifiedlldb/source/Plugins/Process/Linux/NativeProcessLinux.cpp
The file was modifiedlldb/source/API/SBSymbolContext.cpp
The file was modifiedlldb/source/API/SBLineEntry.cpp
The file was modifiedlldb/source/Plugins/ObjectFile/Mach-O/ObjectFileMachO.cpp
The file was modifiedlldb/source/Commands/CommandObjectBreakpoint.cpp
The file was modifiedlldb/source/Utility/StructuredData.cpp
The file was modifiedlldb/source/Commands/CommandObjectBreakpointCommand.cpp
The file was modifiedlldb/source/Plugins/Process/Linux/SingleStepCheck.cpp
The file was modifiedlldb/source/Host/common/Socket.cpp
The file was modifiedlldb/source/Plugins/ObjectFile/ELF/ObjectFileELF.cpp
The file was modifiedlldb/source/API/Utils.h
The file was modifiedlldb/source/Plugins/SymbolFile/Breakpad/SymbolFileBreakpad.cpp
The file was modifiedlldb/source/Plugins/SymbolFile/PDB/SymbolFilePDB.cpp
The file was modifiedlldb/source/Plugins/SymbolFile/DWARF/DebugNamesDWARFIndex.cpp
The file was modifiedlldb/include/lldb/Utility/Reproducer.h
The file was modifiedlldb/include/lldb/Utility/ReproducerInstrumentation.h
The file was modifiedlldb/source/Plugins/Process/Windows/Common/NativeProcessWindows.cpp
The file was modifiedlldb/tools/lldb-instr/Instrument.cpp
The file was modifiedlldb/unittests/Host/MainLoopTest.cpp
The file was modifiedlldb/source/Plugins/Process/NetBSD/NativeProcessNetBSD.cpp
The file was modifiedlldb/source/Plugins/ObjectFile/Breakpad/ObjectFileBreakpad.cpp
The file was modifiedlldb/source/Plugins/Process/POSIX/NativeProcessELF.cpp
The file was modifiedlldb/source/Plugins/SymbolFile/DWARF/DWARFDebugInfo.cpp
The file was modifiedlldb/source/Core/Debugger.cpp
The file was modifiedlldb/source/API/SBDebugger.cpp
The file was modifiedlldb/source/Plugins/Process/Linux/NativeRegisterContextLinux_s390x.cpp
The file was modifiedlldb/source/API/SBStringList.cpp
The file was modifiedlldb/source/API/SBFrame.cpp
The file was modifiedlldb/source/API/SBDeclaration.cpp
The file was modifiedlldb/source/Plugins/Process/Linux/NativeRegisterContextLinux_arm.cpp
The file was modifiedlldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp
The file was modifiedlldb/source/Plugins/SymbolFile/NativePDB/SymbolFileNativePDB.cpp
The file was modifiedlldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPython.cpp
The file was modifiedlldb/source/Plugins/DynamicLoader/POSIX-DYLD/DynamicLoaderPOSIXDYLD.cpp
The file was modifiedlldb/source/Plugins/Process/Linux/NativeRegisterContextLinux_ppc64le.cpp
The file was modifiedlldb/source/Plugins/ExpressionParser/Clang/ClangExpressionDeclMap.h
The file was modifiedlldb/tools/lldb-server/lldb-server.cpp
The file was modifiedlldb/source/Plugins/SymbolFile/DWARF/AppleDWARFIndex.cpp
The file was modifiedlldb/source/Plugins/Language/ObjC/NSDictionary.h
The file was modifiedlldb/source/API/SBBreakpointOptionCommon.cpp
The file was modifiedlldb/source/Commands/CommandObjectCommands.cpp
The file was modifiedlldb/tools/lldb-test/lldb-test.cpp
The file was modifiedlldb/source/Plugins/ExpressionParser/Clang/ClangASTSource.cpp
The file was modifiedlldb/source/Utility/Reproducer.cpp
The file was modifiedlldb/source/Plugins/Process/Linux/NativeRegisterContextLinux_arm64.cpp
The file was modifiedlldb/source/Plugins/Process/Linux/NativeRegisterContextLinux_mips64.cpp
The file was modifiedlldb/unittests/Process/minidump/RegisterContextMinidumpTest.cpp
The file was modifiedlldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp
The file was modifiedlldb/source/Symbol/ClangASTContext.cpp
The file was modifiedlldb/source/Core/ValueObjectSyntheticFilter.cpp
The file was modifiedlldb/source/Plugins/Process/Windows/Common/NativeRegisterContextWindows_i386.cpp
The file was modifiedlldb/source/Core/Module.cpp
The file was modifiedlldb/source/Plugins/Process/minidump/ProcessMinidump.cpp
Commit 3755579f93c2b21aabcc47c23c0a5a5676a0d80e by diegof30
[Bugpoint redesign] Modified Functions pass to consider declarations
Summary: This modification was put in place so the `ReduceMetadata` pass
doesn't have to consider debug functions
Reviewers: dblaikie
Subscribers: llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D66257
llvm-svn: 368934
The file was modifiedllvm/tools/llvm-reduce/deltas/ReduceFunctions.cpp
The file was modifiedllvm/test/Reduce/remove-funcs.ll
Commit 736259e3428d36f8024e6b08e4a95167f313d958 by Jonas Devlieghere
[Polly] Migrate llvm::make_unique to std::make_unique
Now that we've moved to C++14, we no longer need the llvm::make_unique
implementation from STLExtras.h. This patch is a mechanical replacement
of (hopefully) all the llvm::make_unique instances across the monorepo.
Differential revision: https://reviews.llvm.org/D66259
llvm-svn: 368935
The file was modifiedpolly/lib/Transform/DeLICM.cpp
The file was modifiedpolly/lib/Transform/ForwardOpTree.cpp
Commit 6ba7992031cc803a01f0622f4899668b15a20a98 by Jonas Devlieghere
[LLD] Migrate llvm::make_unique to std::make_unique
Now that we've moved to C++14, we no longer need the llvm::make_unique
implementation from STLExtras.h. This patch is a mechanical replacement
of (hopefully) all the llvm::make_unique instances across the monorepo.
Differential revision: https://reviews.llvm.org/D66259
llvm-svn: 368936
The file was modifiedlld/lib/ReaderWriter/MachO/MachONormalizedFileBinaryReader.cpp
The file was modifiedlld/ELF/SyntheticSections.cpp
The file was modifiedlld/lib/Driver/DarwinLdDriver.cpp
The file was modifiedlld/lib/ReaderWriter/MachO/GOTPass.cpp
The file was modifiedlld/lib/ReaderWriter/MachO/LayoutPass.cpp
The file was modifiedlld/lib/ReaderWriter/MachO/CompactUnwindPass.cpp
The file was modifiedlld/lib/ReaderWriter/MachO/MachOLinkingContext.cpp
The file was modifiedlld/wasm/LTO.cpp
The file was modifiedlld/lib/ReaderWriter/MachO/ObjCPass.cpp
The file was modifiedlld/COFF/LTO.cpp
The file was modifiedlld/COFF/PDB.cpp
The file was modifiedlld/lib/ReaderWriter/MachO/TLVPass.cpp
The file was modifiedlld/ELF/LTO.cpp
The file was modifiedlld/lib/ReaderWriter/FileArchive.cpp
The file was modifiedlld/lib/ReaderWriter/MachO/MachONormalizedFileToAtoms.cpp
The file was modifiedlld/ELF/InputFiles.cpp
The file was modifiedlld/ELF/LinkerScript.cpp
The file was modifiedlld/include/lld/ReaderWriter/MachOLinkingContext.h
The file was modifiedlld/lib/ReaderWriter/MachO/ShimPass.cpp
Commit 62abe494fb36cd4c523d36f05cb0e3839df50c04 by syaghmour
Improve anonymous class heuristic in ClangASTContext::CreateRecordType
Summary: Currently the heuristic used in
ClangASTContext::CreateRecordType to identify an anonymous class is that
there is that name is a nullptr or simply a null terminator. This
heuristic is not accurate since it will also sweep up unnamed classes
and lambdas. The improved heuristic relies on the requirement that an
anonymous class must be contained within a class.
Differential Revision: https://reviews.llvm.org/D66175
llvm-svn: 368937
The file was removedlldb/packages/Python/lldbsuite/test/expression_command/completion-crash-lambda/main.cpp
The file was addedlldb/packages/Python/lldbsuite/test/expression_command/completion-in-lambda-and-unnnamed-class/main.cpp
The file was removedlldb/packages/Python/lldbsuite/test/expression_command/completion-crash-lambda/TestCompletionCrashInLambda.py
The file was addedlldb/packages/Python/lldbsuite/test/expression_command/completion-in-lambda-and-unnnamed-class/TestCompletionInLambdaAndUnnamedClass.py
The file was modifiedlldb/source/Symbol/ClangASTContext.cpp
Commit 54f6be7b833556595695efd270f7cfa9e904bb8a by jdoerfert
[Attributor] Try to fix "missing field 'RetInsts' initializer" warning
http://lab.llvm.org:8011/builders/lld-x86_64-darwin13/builds/35674/steps/build_Lld/logs/stdio
llvm-svn: 368938
The file was modifiedllvm/lib/Transforms/IPO/Attributor.cpp
Commit cad8356d699b36c73abb267f65db575ddacbd652 by JF Bastien
Remove LVALUE / RVALUE workarounds
Summary: LLVM_HAS_RVALUE_REFERENCE_THIS and LLVM_LVALUE_FUNCTION
shouldn't be needed anymore because the minimum compiler versions
support them.
Subscribers: jkorous, dexonsmith, cfe-commits, llvm-commits, hans,
thakis, chandlerc, rnk
Tags: #clang, #llvm
Differential Revision: https://reviews.llvm.org/D66240
llvm-svn: 368939
The file was modifiedclang/include/clang/StaticAnalyzer/Core/PathSensitive/ExplodedGraph.h
The file was modifiedllvm/include/llvm/Support/Compiler.h
The file was modifiedllvm/unittests/ADT/OptionalTest.cpp
The file was modifiedllvm/include/llvm/ADT/Optional.h
Commit 9e77f524b56985191c5ac6347abf391c5d9ba8ef by richard-llvm
Fix handling of class member access into a vector type.
When handling a member access into a non-class, non-ObjC-object type, we
would perform a lookup into the surrounding scope as if for an
unqualified lookup. If the member access was followed by a '<' and this
lookup (or the typo-correction for it) found a template name, we'd treat
the member access as naming that template.
Now we treat such accesses as never naming a template if the type of the
object expression is of vector type, so that vector component accesses
are never misinterpreted as naming something else. This is not entirely
correct, since it is in fact valid to name a template from the enclosing
scope in this context, when invoking a pseudo-destructor for the vector
type via an alias template, but that's very much a corner case, and this
change leaves that case only as broken as the corresponding case for
Objective-C types is.
This incidentally adds support for dr2292, which permits a 'template'
keyword at the start of a member access naming a pseudo-destructor.
llvm-svn: 368940
The file was modifiedclang/test/SemaCXX/vector.cpp
The file was modifiedclang/lib/Sema/SemaTemplate.cpp
The file was modifiedclang/test/CXX/drs/dr22xx.cpp
The file was modifiedclang/test/SemaCXX/cxx2a-adl-only-template-id.cpp
The file was modifiedclang/test/CXX/drs/dr4xx.cpp
The file was modifiedclang/test/SemaCXX/pseudo-destructors.cpp
The file was modifiedclang/lib/Sema/SemaExprCXX.cpp
Commit 5cd312d352dc663aec3b658e2bf5da347f365eb1 by richard-llvm
[www] Update DR status page to match latest version of CWG issues list.
llvm-svn: 368941
The file was modifiedclang/www/cxx_dr_status.html
Commit 2b3d49b610bd2a45884115edcb21110bfa325f51 by Jonas Devlieghere
[Clang] Migrate llvm::make_unique to std::make_unique
Now that we've moved to C++14, we no longer need the llvm::make_unique
implementation from STLExtras.h. This patch is a mechanical replacement
of (hopefully) all the llvm::make_unique instances across the monorepo.
Differential revision: https://reviews.llvm.org/D66259
llvm-svn: 368942
The file was modifiedclang/lib/Analysis/plugins/SampleAnalyzer/MainCallChecker.cpp
The file was modifiedclang/unittests/ASTMatchers/ASTMatchersNarrowingTest.cpp
The file was modifiedclang/lib/Driver/ToolChains/Darwin.cpp
The file was modifiedclang/unittests/AST/EvaluateAsRValueTest.cpp
The file was modifiedclang/lib/StaticAnalyzer/Checkers/EnumCastOutOfRangeChecker.cpp
The file was modifiedclang/lib/Driver/ToolChains/PS4CPU.cpp
The file was modifiedclang/lib/Parse/ParseStmt.cpp
The file was modifiedclang/lib/StaticAnalyzer/Checkers/MIGChecker.cpp
The file was modifiedclang/lib/Driver/ToolChains/Hexagon.cpp
The file was modifiedclang/lib/StaticAnalyzer/Core/RangeConstraintManager.cpp
The file was modifiedclang/lib/Serialization/ModuleManager.cpp
The file was modifiedclang/lib/Sema/SemaInit.cpp
The file was modifiedclang/unittests/StaticAnalyzer/StoreTest.cpp
The file was modifiedclang/lib/Analysis/AnalysisDeclContext.cpp
The file was modifiedclang/unittests/StaticAnalyzer/SymbolReaperTest.cpp
The file was modifiedclang/unittests/Frontend/CompilerInstanceTest.cpp
The file was modifiedclang/tools/c-index-test/core_main.cpp
The file was modifiedclang/lib/StaticAnalyzer/Core/BugReporterVisitors.cpp
The file was modifiedclang/lib/Serialization/PCHContainerOperations.cpp
The file was modifiedclang/lib/Tooling/CompilationDatabase.cpp
The file was modifiedclang/lib/Sema/SemaExprMember.cpp
The file was modifiedclang/unittests/Tooling/ToolingTest.cpp
The file was modifiedclang/include/clang/Serialization/ASTReader.h
The file was modifiedclang/lib/Frontend/ASTConsumers.cpp
The file was modifiedclang/lib/StaticAnalyzer/Checkers/NSErrorChecker.cpp
The file was modifiedclang/lib/Parse/ParseCXXInlineMethods.cpp
The file was modifiedclang/lib/AST/ExternalASTMerger.cpp
The file was modifiedclang/lib/StaticAnalyzer/Checkers/UndefinedArraySubscriptChecker.cpp
The file was modifiedclang/unittests/Lex/LexerTest.cpp
The file was modifiedclang/lib/StaticAnalyzer/Checkers/ReturnPointerRangeChecker.cpp
The file was modifiedclang/lib/Driver/ToolChains/WebAssembly.cpp
The file was modifiedclang/lib/StaticAnalyzer/Checkers/ArrayBoundCheckerV2.cpp
The file was modifiedclang/lib/StaticAnalyzer/Checkers/UndefinedAssignmentChecker.cpp
The file was modifiedclang/unittests/Sema/ExternalSemaSourceTest.cpp
The file was modifiedclang/lib/Analysis/Consumed.cpp
The file was modifiedclang/unittests/Tooling/RefactoringTest.cpp
The file was modifiedclang/lib/Parse/ParseExpr.cpp
The file was modifiedclang/tools/driver/cc1_main.cpp
The file was modifiedclang/lib/AST/Mangle.cpp
The file was modifiedclang/lib/StaticAnalyzer/Checkers/TestAfterDivZeroChecker.cpp
The file was modifiedclang/lib/StaticAnalyzer/Checkers/CastSizeChecker.cpp
The file was modifiedclang/include/clang/Basic/SyncScope.h
The file was modifiedclang/lib/StaticAnalyzer/Checkers/CallAndMessageChecker.cpp
The file was modifiedclang/lib/StaticAnalyzer/Checkers/MallocChecker.cpp
The file was modifiedclang/include/clang/Sema/TypoCorrection.h
The file was modifiedclang/lib/Tooling/GuessTargetAndModeCompilationDatabase.cpp
The file was modifiedclang/lib/StaticAnalyzer/Core/RegionStore.cpp
The file was modifiedclang/lib/Driver/ToolChains/MinGW.cpp
The file was modifiedclang/lib/Analysis/ThreadSafety.cpp
The file was modifiedclang/lib/CodeGen/CGCall.cpp
The file was modifiedclang/lib/Driver/ToolChains/BareMetal.cpp
The file was modifiedclang/lib/Serialization/ASTReader.cpp
The file was modifiedclang/lib/StaticAnalyzer/Checkers/MoveChecker.cpp
The file was modifiedclang/unittests/Tooling/Syntax/TokensTest.cpp
The file was modifiedclang/unittests/ASTMatchers/ASTMatchersTraversalTest.cpp
The file was modifiedclang/lib/Format/ContinuationIndenter.cpp
The file was modifiedclang/lib/StaticAnalyzer/Checkers/BoolAssignmentChecker.cpp
The file was modifiedclang/lib/CodeGen/BackendUtil.cpp
The file was modifiedclang/lib/StaticAnalyzer/Checkers/ObjCContainersChecker.cpp
The file was modifiedclang/lib/ARCMigrate/ObjCMT.cpp
The file was modifiedclang/lib/StaticAnalyzer/Checkers/NullabilityChecker.cpp
The file was modifiedclang/lib/Driver/ToolChains/HIP.cpp
The file was modifiedclang/lib/Sema/SemaOpenMP.cpp
The file was modifiedclang/lib/StaticAnalyzer/Checkers/BasicObjCFoundationChecks.cpp
The file was modifiedclang/lib/StaticAnalyzer/Checkers/ExprInspectionChecker.cpp
The file was modifiedclang/lib/AST/VTableBuilder.cpp
The file was modifiedclang/lib/StaticAnalyzer/Checkers/DivZeroChecker.cpp
The file was modifiedclang/lib/Tooling/InterpolatingCompilationDatabase.cpp
The file was modifiedclang/lib/StaticAnalyzer/Frontend/AnalysisConsumer.cpp
The file was modifiedclang/lib/Driver/ToolChains/CommonArgs.cpp
The file was modifiedclang/unittests/Basic/FileManagerTest.cpp
The file was modifiedclang/lib/Sema/SemaExprObjC.cpp
The file was modifiedclang/lib/Sema/SemaCXXScopeSpec.cpp
The file was modifiedclang/tools/clang-refactor/ClangRefactor.cpp
The file was modifiedclang/lib/Tooling/Syntax/Tokens.cpp
The file was modifiedclang/lib/Sema/SemaLookup.cpp
The file was modifiedclang/lib/Driver/ToolChains/AVR.cpp
The file was modifiedclang/lib/StaticAnalyzer/Checkers/TaintTesterChecker.cpp
The file was modifiedclang/lib/Frontend/Rewrite/FrontendActions.cpp
The file was modifiedclang/lib/CodeGen/ObjectFilePCHContainerOperations.cpp
The file was modifiedclang/lib/Driver/ToolChains/CloudABI.cpp
The file was modifiedclang/lib/Frontend/FrontendAction.cpp
The file was modifiedclang/lib/DirectoryWatcher/mac/DirectoryWatcher-mac.cpp
The file was modifiedclang/lib/Driver/ToolChains/Ananas.cpp
The file was modifiedclang/lib/Tooling/DependencyScanning/DependencyScanningFilesystem.cpp
The file was modifiedclang/lib/Tooling/StandaloneExecution.cpp
The file was modifiedclang/lib/Tooling/AllTUsExecution.cpp
The file was modifiedclang/lib/Driver/ToolChains/NaCl.cpp
The file was modifiedclang/lib/StaticAnalyzer/Checkers/PointerSubChecker.cpp
The file was modifiedclang/lib/ASTMatchers/Dynamic/Registry.cpp
The file was modifiedclang/lib/StaticAnalyzer/Checkers/VforkChecker.cpp
The file was modifiedclang/lib/Tooling/Refactoring/ASTSelectionRequirements.cpp
The file was modifiedclang/lib/Driver/ToolChains/XCore.cpp
The file was modifiedclang/lib/Sema/SemaExpr.cpp
The file was modifiedclang/lib/Driver/ToolChains/Myriad.cpp
The file was modifiedclang/lib/Tooling/Refactoring/Rename/USRFindingAction.cpp
The file was modifiedclang/lib/Tooling/Refactoring/Rename/SymbolOccurrences.cpp
The file was modifiedclang/tools/clang-extdef-mapping/ClangExtDefMapGen.cpp
The file was modifiedclang/lib/Sema/SemaTemplateVariadic.cpp
The file was modifiedclang/lib/Tooling/Refactoring/Rename/RenamingAction.cpp
The file was modifiedclang/lib/AST/CXXInheritance.cpp
The file was modifiedclang/lib/Lex/PPMacroExpansion.cpp
The file was modifiedclang/unittests/Tooling/CompilationDatabaseTest.cpp
The file was modifiedclang/lib/StaticAnalyzer/Checkers/StreamChecker.cpp
The file was modifiedclang/tools/libclang/CXLoadedDiagnostic.cpp
The file was modifiedclang/lib/Driver/ToolChains/Cuda.cpp
The file was modifiedclang/lib/FrontendTool/ExecuteCompilerInvocation.cpp
The file was modifiedclang/lib/Driver/Driver.cpp
The file was modifiedclang/lib/Format/UnwrappedLineParser.cpp
The file was modifiedclang/unittests/Basic/SourceManagerTest.cpp
The file was modifiedclang/lib/Tooling/CommonOptionsParser.cpp
The file was modifiedclang/lib/Driver/ToolChains/NetBSD.cpp
The file was modifiedclang/lib/Sema/SemaTemplate.cpp
The file was modifiedclang/tools/libclang/CIndexer.cpp
The file was modifiedclang/lib/StaticAnalyzer/Checkers/PointerArithChecker.cpp
The file was modifiedclang/lib/StaticAnalyzer/Checkers/IteratorChecker.cpp
The file was modifiedclang/unittests/StaticAnalyzer/CallDescriptionTest.cpp
The file was modifiedclang/lib/Tooling/Refactoring/RefactoringActions.cpp
The file was modifiedclang/tools/clang-scan-deps/ClangScanDeps.cpp
The file was modifiedclang/lib/CodeGen/CodeGenModule.cpp
The file was modifiedclang/include/clang/Lex/Preprocessor.h
The file was modifiedclang/lib/StaticAnalyzer/Checkers/LocalizationChecker.cpp
The file was modifiedclang/lib/Driver/ToolChains/MSVC.cpp
The file was modifiedclang/lib/Frontend/Rewrite/RewriteObjC.cpp
The file was modifiedclang/tools/clang-fuzzer/handle-llvm/handle_llvm.cpp
The file was modifiedclang/lib/ARCMigrate/ARCMT.cpp
The file was modifiedclang/lib/StaticAnalyzer/Checkers/CloneChecker.cpp
The file was modifiedclang/lib/Parse/ParsePragma.cpp
The file was modifiedclang/lib/StaticAnalyzer/Checkers/BlockInCriticalSectionChecker.cpp
The file was modifiedclang/lib/StaticAnalyzer/Checkers/UndefResultChecker.cpp
The file was modifiedclang/unittests/Frontend/FrontendActionTest.cpp
The file was modifiedclang/lib/Frontend/ASTUnit.cpp
The file was modifiedclang/lib/StaticAnalyzer/Checkers/MacOSKeychainAPIChecker.cpp
The file was modifiedclang/lib/ASTMatchers/ASTMatchFinder.cpp
The file was modifiedclang/examples/AnnotateFunctions/AnnotateFunctions.cpp
The file was modifiedclang/lib/StaticAnalyzer/Checkers/UnixAPIChecker.cpp
The file was modifiedclang/lib/StaticAnalyzer/Checkers/CStringChecker.cpp
The file was modifiedclang/lib/Lex/PPLexerChange.cpp
The file was modifiedclang/lib/Frontend/PrintPreprocessedOutput.cpp
The file was modifiedclang/tools/clang-diff/ClangDiff.cpp
The file was modifiedclang/include/clang/AST/ASTImporterSharedState.h
The file was modifiedclang/lib/StaticAnalyzer/Checkers/VirtualCallChecker.cpp
The file was modifiedclang/lib/Frontend/ChainedIncludesSource.cpp
The file was modifiedclang/examples/PrintFunctionNames/PrintFunctionNames.cpp
The file was modifiedclang/lib/Frontend/InterfaceStubFunctionsConsumer.cpp
The file was modifiedclang/lib/StaticAnalyzer/Checkers/ConversionChecker.cpp
The file was modifiedclang/lib/StaticAnalyzer/Checkers/NonNullParamChecker.cpp
The file was modifiedclang/lib/StaticAnalyzer/Checkers/RetainCountChecker/RetainCountChecker.cpp
The file was modifiedclang/lib/DirectoryWatcher/linux/DirectoryWatcher-linux.cpp
The file was modifiedclang/lib/Driver/ToolChains/AMDGPU.cpp
The file was modifiedclang/utils/TableGen/NeonEmitter.cpp
The file was modifiedclang/lib/StaticAnalyzer/Checkers/FixedAddressChecker.cpp
The file was modifiedclang/unittests/ASTMatchers/Dynamic/ParserTest.cpp
The file was modifiedclang/lib/CodeGen/CodeGenAction.cpp
The file was modifiedclang/lib/AST/ASTContext.cpp
The file was modifiedclang/utils/TableGen/ClangAttrEmitter.cpp
The file was modifiedclang/include/clang/StaticAnalyzer/Core/BugReporter/BugReporter.h
The file was modifiedclang/lib/Driver/ToolChains/Fuchsia.cpp
The file was modifiedclang/lib/StaticAnalyzer/Checkers/PthreadLockChecker.cpp
The file was modifiedclang/lib/Sema/SemaDeclCXX.cpp
The file was modifiedclang/lib/StaticAnalyzer/Frontend/CheckerRegistration.cpp
The file was modifiedclang/unittests/CrossTU/CrossTranslationUnitTest.cpp
The file was modifiedclang/include/clang/Frontend/ASTUnit.h
The file was modifiedclang/lib/StaticAnalyzer/Checkers/RetainCountChecker/RetainCountDiagnostics.cpp
The file was modifiedclang/include/clang/Sema/SemaInternal.h
The file was modifiedclang/lib/Frontend/FrontendActions.cpp
The file was modifiedclang/lib/StaticAnalyzer/Checkers/UndefCapturedBlockVarChecker.cpp
The file was modifiedclang/unittests/ASTMatchers/ASTMatchersNodeTest.cpp
The file was modifiedclang/lib/StaticAnalyzer/Core/BugReporter.cpp
The file was modifiedclang/lib/Lex/Pragma.cpp
The file was modifiedclang/unittests/Tooling/ExecutionTest.cpp
The file was modifiedclang/lib/StaticAnalyzer/Checkers/UninitializedObject/UninitializedObjectChecker.cpp
The file was modifiedclang/lib/Driver/ToolChains/RISCVToolchain.cpp
The file was modifiedclang/include/clang/Tooling/Refactoring/RefactoringActionRulesInternal.h
The file was modifiedclang/unittests/AST/ExternalASTSourceTest.cpp
The file was modifiedclang/lib/Lex/Preprocessor.cpp
The file was modifiedclang/lib/Driver/ToolChains/Minix.cpp
The file was modifiedclang/lib/Driver/ToolChains/Solaris.cpp
The file was modifiedclang/lib/StaticAnalyzer/Checkers/DereferenceChecker.cpp
The file was modifiedclang/lib/Frontend/ModuleDependencyCollector.cpp
The file was modifiedclang/lib/Driver/ToolChains/DragonFly.cpp
The file was modifiedclang/lib/StaticAnalyzer/Checkers/ObjCAtSyncChecker.cpp
The file was modifiedclang/lib/StaticAnalyzer/Checkers/MacOSXAPIChecker.cpp
The file was modifiedclang/lib/Driver/ToolChains/CrossWindows.cpp
The file was modifiedclang/lib/StaticAnalyzer/Checkers/ReturnUndefChecker.cpp
The file was modifiedclang/lib/Frontend/SerializedDiagnosticPrinter.cpp
The file was modifiedclang/lib/Parse/ParseTentative.cpp
The file was modifiedclang/lib/Frontend/VerifyDiagnosticConsumer.cpp
The file was modifiedclang/unittests/Index/IndexTests.cpp
The file was modifiedclang/lib/StaticAnalyzer/Checkers/ObjCSuperDeallocChecker.cpp
The file was modifiedclang/lib/Driver/ToolChains/Gnu.cpp
The file was modifiedclang/tools/libclang/CIndexDiagnostic.cpp
The file was modifiedclang/lib/StaticAnalyzer/Frontend/FrontendActions.cpp
The file was modifiedclang/lib/Analysis/CallGraph.cpp
The file was modifiedclang/lib/StaticAnalyzer/Checkers/PaddingChecker.cpp
The file was modifiedclang/lib/Driver/ToolChains/Clang.cpp
The file was modifiedclang/lib/Sema/SemaDecl.cpp
The file was modifiedclang/lib/Basic/FileManager.cpp
The file was modifiedclang/lib/Frontend/DependencyFile.cpp
The file was modifiedclang/tools/clang-refactor/TestSupport.cpp
The file was modifiedclang/lib/StaticAnalyzer/Checkers/UndefBranchChecker.cpp
The file was modifiedclang/lib/Basic/SourceManager.cpp
The file was modifiedclang/lib/StaticAnalyzer/Core/WorkList.cpp
The file was modifiedclang/unittests/Sema/CodeCompleteTest.cpp
The file was modifiedclang/lib/StaticAnalyzer/Checkers/GenericTaintChecker.cpp
The file was modifiedclang/tools/libclang/Indexing.cpp
The file was modifiedclang/lib/StaticAnalyzer/Checkers/InnerPointerChecker.cpp
The file was modifiedclang/lib/StaticAnalyzer/Checkers/SimpleStreamChecker.cpp
The file was modifiedclang/lib/Frontend/DependencyGraph.cpp
The file was modifiedclang/lib/Frontend/Rewrite/HTMLPrint.cpp
The file was modifiedclang/lib/Index/IndexingAction.cpp
The file was modifiedclang/lib/StaticAnalyzer/Checkers/ArrayBoundChecker.cpp
The file was modifiedclang/lib/Lex/PPDirectives.cpp
The file was modifiedclang/lib/StaticAnalyzer/Checkers/NSAutoreleasePoolChecker.cpp
The file was modifiedclang/unittests/Tooling/Syntax/TreeTest.cpp
The file was modifiedclang/lib/CodeGen/CGOpenMPRuntimeNVPTX.cpp
The file was modifiedclang/lib/StaticAnalyzer/Checkers/ValistChecker.cpp
The file was modifiedclang/tools/libclang/CIndex.cpp
The file was modifiedclang/lib/Driver/DriverOptions.cpp
The file was modifiedclang/lib/CodeGen/CodeGenPGO.cpp
The file was modifiedclang/lib/Driver/ToolChains/MSP430.cpp
The file was modifiedclang/lib/AST/MicrosoftCXXABI.cpp
The file was modifiedclang/lib/Sema/SemaDeclObjC.cpp
The file was modifiedclang/lib/Frontend/HeaderIncludeGen.cpp
The file was modifiedclang/include/clang/StaticAnalyzer/Core/PathSensitive/ExplodedGraph.h
The file was modifiedclang/tools/driver/cc1as_main.cpp
The file was modifiedclang/lib/Format/Format.cpp
The file was modifiedclang/lib/StaticAnalyzer/Checkers/VLASizeChecker.cpp
The file was modifiedclang/lib/StaticAnalyzer/Checkers/StackAddrEscapeChecker.cpp
The file was modifiedclang/lib/Tooling/DependencyScanning/DependencyScanningWorker.cpp
The file was modifiedclang/lib/StaticAnalyzer/Checkers/DebugCheckers.cpp
The file was modifiedclang/lib/Frontend/PrecompiledPreamble.cpp
The file was modifiedclang/lib/StaticAnalyzer/Checkers/ChrootChecker.cpp
The file was modifiedclang/examples/clang-interpreter/main.cpp
The file was modifiedclang/lib/StaticAnalyzer/Checkers/DynamicTypePropagation.cpp
The file was modifiedclang/tools/clang-import-test/clang-import-test.cpp
The file was modifiedclang/unittests/AST/RecursiveASTVisitorTest.cpp
The file was modifiedclang/lib/AST/ItaniumCXXABI.cpp
The file was modifiedclang/lib/Frontend/CompilerInstance.cpp
The file was modifiedclang/unittests/Frontend/ASTUnitTest.cpp
The file was modifiedclang/lib/Frontend/Rewrite/RewriteModernObjC.cpp
The file was modifiedclang/lib/StaticAnalyzer/Checkers/MmapWriteExecChecker.cpp
The file was modifiedclang/unittests/Tooling/TestVisitor.h
The file was modifiedclang/lib/Driver/ToolChains/FreeBSD.cpp
The file was modifiedclang/lib/StaticAnalyzer/Checkers/MPI-Checker/MPIBugReporter.cpp
The file was modifiedclang/lib/StaticAnalyzer/Checkers/ObjCSelfInitChecker.cpp
The file was modifiedclang/lib/Tooling/ASTDiff/ASTDiff.cpp
The file was modifiedclang/lib/ASTMatchers/Dynamic/Marshallers.h
The file was modifiedclang/include/clang/Tooling/ASTDiff/ASTDiff.h
The file was modifiedclang/lib/Tooling/RefactoringCallbacks.cpp
The file was modifiedclang/lib/Frontend/CreateInvocationFromCommandLine.cpp
The file was modifiedclang/lib/StaticAnalyzer/Checkers/DynamicTypeChecker.cpp
The file was modifiedclang/lib/StaticAnalyzer/Core/SMTConstraintManager.cpp
The file was modifiedclang/tools/clang-check/ClangCheck.cpp
The file was modifiedclang/unittests/ASTMatchers/ASTMatchersInternalTest.cpp
The file was modifiedclang/lib/Driver/ToolChains/OpenBSD.cpp
The file was modifiedclang/lib/Frontend/MultiplexConsumer.cpp
The file was modifiedclang/lib/StaticAnalyzer/Checkers/DeleteWithNonVirtualDtorChecker.cpp
The file was modifiedclang/lib/Sema/Sema.cpp
Commit 1c705d9c538d1d4a24f34e93be2582bc7e3a3da4 by Jonas Devlieghere
[clang-tools-extra] Migrate llvm::make_unique to std::make_unique
Now that we've moved to C++14, we no longer need the llvm::make_unique
implementation from STLExtras.h. This patch is a mechanical replacement
of (hopefully) all the llvm::make_unique instances across the monorepo.
Differential revision: https://reviews.llvm.org/D66259
llvm-svn: 368944
The file was modifiedclang-tools-extra/clang-tidy/plugin/ClangTidyPlugin.cpp
The file was modifiedclang-tools-extra/clangd/xpc/XPCTransport.cpp
The file was modifiedclang-tools-extra/clang-tidy/performance/TypePromotionInMathFnCheck.cpp
The file was modifiedclang-tools-extra/clang-include-fixer/find-all-symbols/FindAllSymbolsAction.cpp
The file was modifiedclang-tools-extra/unittests/clang-move/ClangMoveTests.cpp
The file was modifiedclang-tools-extra/clangd/unittests/ContextTests.cpp
The file was modifiedclang-tools-extra/clangd/tool/ClangdMain.cpp
The file was modifiedclang-tools-extra/clang-include-fixer/plugin/IncludeFixerPlugin.cpp
The file was modifiedclang-tools-extra/clang-tidy/performance/MoveConstructorInitCheck.cpp
The file was modifiedclang-tools-extra/modularize/CoverageChecker.cpp
The file was modifiedclang-tools-extra/unittests/clang-doc/HTMLGeneratorTest.cpp
The file was modifiedclang-tools-extra/clang-tidy/bugprone/MacroRepeatedSideEffectsCheck.cpp
The file was modifiedclang-tools-extra/clang-tidy/modernize/ReplaceRandomShuffleCheck.cpp
The file was modifiedclang-tools-extra/clang-tidy/modernize/DeprecatedHeadersCheck.cpp
The file was modifiedclang-tools-extra/clang-change-namespace/ChangeNamespace.cpp
The file was modifiedclang-tools-extra/clang-tidy/tool/ClangTidyMain.cpp
The file was modifiedclang-tools-extra/clang-reorder-fields/ReorderFieldsAction.cpp
The file was modifiedclang-tools-extra/clang-tidy/utils/IncludeInserter.h
The file was modifiedclang-tools-extra/clangd/index/MemIndex.cpp
The file was modifiedclang-tools-extra/clangd/unittests/SymbolCollectorTests.cpp
The file was modifiedclang-tools-extra/clang-tidy/utils/IncludeInserter.cpp
The file was modifiedclang-tools-extra/clang-tidy/performance/UnnecessaryValueParamCheck.cpp
The file was modifiedclang-tools-extra/clang-doc/HTMLGenerator.cpp
The file was modifiedclang-tools-extra/clang-tidy/modernize/PassByValueCheck.cpp
The file was modifiedclang-tools-extra/clangd/index/FileIndex.cpp
The file was modifiedclang-tools-extra/clangd/Compiler.cpp
The file was modifiedclang-tools-extra/clang-tidy/ClangTidyOptions.h
The file was modifiedclang-tools-extra/clang-tidy/google/AvoidUnderscoreInGoogletestNameCheck.cpp
The file was modifiedclang-tools-extra/clang-tidy/utils/TransformerClangTidyCheck.cpp
The file was modifiedclang-tools-extra/clangd/ClangdLSPServer.cpp
The file was modifiedclang-tools-extra/clang-tidy/cppcoreguidelines/MacroUsageCheck.cpp
The file was modifiedclang-tools-extra/pp-trace/PPTrace.cpp
The file was modifiedclang-tools-extra/clangd/URI.cpp
The file was modifiedclang-tools-extra/clangd/ClangdServer.cpp
The file was modifiedclang-tools-extra/clang-tidy/fuchsia/RestrictSystemIncludesCheck.cpp
The file was modifiedclang-tools-extra/clangd/index/IndexAction.cpp
The file was modifiedclang-tools-extra/clang-tidy/utils/HeaderGuard.cpp
The file was modifiedclang-tools-extra/clang-tidy/misc/UnusedParametersCheck.cpp
The file was modifiedclang-tools-extra/clang-include-fixer/FuzzySymbolIndex.cpp
The file was modifiedclang-tools-extra/clang-tidy/modernize/ReplaceAutoPtrCheck.cpp
The file was modifiedclang-tools-extra/clang-tidy/readability/IdentifierNamingCheck.cpp
The file was modifiedclang-tools-extra/clangd/index/SymbolCollector.cpp
The file was modifiedclang-tools-extra/unittests/clang-tidy/IncludeInserterTest.cpp
The file was modifiedclang-tools-extra/clang-doc/Representation.cpp
The file was modifiedclang-tools-extra/unittests/clang-doc/MDGeneratorTest.cpp
The file was modifiedclang-tools-extra/clangd/TUScheduler.cpp
The file was modifiedclang-tools-extra/clangd/index/Background.cpp
The file was modifiedclang-tools-extra/clangd/refactor/tweaks/ExtractVariable.cpp
The file was modifiedclang-tools-extra/clangd/CodeComplete.cpp
The file was modifiedclang-tools-extra/clang-include-fixer/IncludeFixer.cpp
The file was modifiedclang-tools-extra/clang-doc/Serialize.cpp
The file was modifiedclang-tools-extra/clangd/index/dex/dexp/Dexp.cpp
The file was modifiedclang-tools-extra/clang-tidy/abseil/StringFindStartswithCheck.cpp
The file was modifiedclang-tools-extra/unittests/clang-tidy/ClangTidyTest.h
The file was modifiedclang-tools-extra/clang-tidy/google/UpgradeGoogletestCaseCheck.cpp
The file was modifiedclang-tools-extra/clangd/Context.h
The file was modifiedclang-tools-extra/unittests/clang-doc/BitcodeTest.cpp
The file was modifiedclang-tools-extra/clang-tidy/ClangTidy.cpp
The file was modifiedclang-tools-extra/clang-tidy/bugprone/LambdaFunctionNameCheck.cpp
The file was modifiedclang-tools-extra/clang-tidy/cert/SetLongJmpCheck.cpp
The file was modifiedclang-tools-extra/clangd/unittests/BackgroundIndexTests.cpp
The file was modifiedclang-tools-extra/modularize/Modularize.cpp
The file was modifiedclang-tools-extra/clangd/index/BackgroundIndexStorage.cpp
The file was modifiedclang-tools-extra/clang-move/HelperDeclRefGraph.cpp
The file was modifiedclang-tools-extra/clang-tidy/ClangTidyDiagnosticConsumer.cpp
The file was modifiedclang-tools-extra/clang-doc/ClangDoc.cpp
The file was modifiedclang-tools-extra/clang-tidy/ExpandModularHeadersPPCallbacks.cpp
The file was modifiedclang-tools-extra/clangd/unittests/IndexTests.cpp
The file was modifiedclang-tools-extra/unittests/clang-include-fixer/IncludeFixerTest.cpp
The file was modifiedclang-tools-extra/clang-tidy/readability/RedundantPreprocessorCheck.cpp
The file was modifiedclang-tools-extra/clang-tidy/llvm/IncludeOrderCheck.cpp
The file was modifiedclang-tools-extra/clangd/unittests/TUSchedulerTests.cpp
The file was modifiedclang-tools-extra/unittests/clang-doc/YAMLGeneratorTest.cpp
The file was modifiedclang-tools-extra/clang-tidy/google/IntegerTypesCheck.cpp
The file was modifiedclang-tools-extra/clang-tidy/bugprone/MacroParenthesesCheck.cpp
The file was modifiedclang-tools-extra/clang-tidy/modernize/MakeSmartPtrCheck.cpp
The file was modifiedclang-tools-extra/clangd/index/dex/Iterator.cpp
The file was modifiedclang-tools-extra/clangd/unittests/GlobalCompilationDatabaseTests.cpp
The file was modifiedclang-tools-extra/clangd/index/dex/Dex.cpp
The file was modifiedclang-tools-extra/clang-tidy/cppcoreguidelines/ProBoundsConstantArrayIndexCheck.cpp
The file was modifiedclang-tools-extra/clangd/index/CanonicalIncludes.cpp
The file was modifiedclang-tools-extra/clangd/unittests/TestTU.cpp
The file was modifiedclang-tools-extra/clangd/indexer/IndexerMain.cpp
The file was modifiedclang-tools-extra/unittests/clang-doc/GeneratorTest.cpp
The file was modifiedclang-tools-extra/unittests/clang-doc/MergeTest.cpp
The file was modifiedclang-tools-extra/clang-tidy/bugprone/UseAfterMoveCheck.cpp
The file was modifiedclang-tools-extra/clang-include-fixer/find-all-symbols/tool/FindAllSymbolsMain.cpp
The file was modifiedclang-tools-extra/clang-move/Move.cpp
The file was modifiedclang-tools-extra/clang-tidy/google/TodoCommentCheck.cpp
The file was modifiedclang-tools-extra/clang-include-fixer/tool/ClangIncludeFixer.cpp
The file was modifiedclang-tools-extra/clang-doc/BitcodeReader.cpp
The file was modifiedclang-tools-extra/clangd/QueryDriverDatabase.cpp
The file was modifiedclang-tools-extra/clangd/Headers.cpp
The file was modifiedclang-tools-extra/clangd/JSONTransport.cpp
The file was modifiedclang-tools-extra/clangd/Trace.cpp
The file was modifiedclang-tools-extra/clangd/ClangdUnit.cpp
The file was modifiedclang-tools-extra/clangd/unittests/FileIndexTests.cpp
The file was modifiedclang-tools-extra/modularize/PreprocessorTracker.cpp
The file was modifiedclang-tools-extra/clangd/index/dex/PostingList.cpp
Commit 708c4605a16b1caae640343ccf2ec74a56aee30e by devteam.codafi
Expose TailCallKind via the LLVM C API
Summary: This exposes `CallInst`'s tail call kind via new
`LLVMGetTailCallKind` and `LLVMSetTailCallKind` functions. The
motivation for this is to be able to see `musttail` for languages that
require mandatory tail calls for correctness. Today only the weaker
`LLVMSetTail` is exposed and there is no way to set
`GuaranteedTailCallOpt` via the C API.
Reviewers: CodaFi, jyknight, deadalnix, rnk
Reviewed By: CodaFi
Subscribers: hiraditya, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D66061
llvm-svn: 368945
The file was modifiedllvm/tools/llvm-c-test/echo.cpp
The file was modifiedllvm/include/llvm-c/Core.h
The file was modifiedllvm/lib/IR/Core.cpp
The file was modifiedllvm/test/Bindings/llvm-c/invoke.ll
Commit 5edd6843fa148ddc1b1a45b2bc66d1272a68d3c2 by Jonas Devlieghere
[compiler-rt] Migrate llvm::make_unique to std::make_unique
Now that we've moved to C++14, we no longer need the llvm::make_unique
implementation from STLExtras.h. This patch is a mechanical replacement
of (hopefully) all the llvm::make_unique instances across the monorepo.
Differential revision: https://reviews.llvm.org/D66259
llvm-svn: 368946
The file was modifiedcompiler-rt/lib/xray/tests/unit/fdr_controller_test.cpp
Commit 399408a92f1dbbefeb708f718b0d8eb62dfa9f09 by jlettner
[sanitizer_common] Replace forkpty with posix_spawn on Darwin
On Darwin, we currently use forkpty to communicate with the "atos"
symbolizer. There are several problems that fork[pty] has, e.g. that
after fork, interceptors are still active and this sometimes causes
crashes or hangs. This is especially problematic for TSan, which uses
interceptors for OS-provided locks and mutexes, and even Libc functions
use those.
This patch replaces forkpty with posix_spawn on Darwin. Since
posix_spawn doesn't fork (at least on Darwin), the interceptors are not
a problem. Another benefit is that we'll handle post-fork failures (e.g.
sandbox disallows "exec") gracefully now.
Related revisions and previous attempts that were blocked by or had to
be revered due to test failures: https://reviews.llvm.org/D48451
https://reviews.llvm.org/D40032
Reviewed By: kubamracek
Differential Revision: https://reviews.llvm.org/D65253
llvm-svn: 368947
The file was modifiedcompiler-rt/lib/sanitizer_common/sanitizer_mac.cpp
The file was modifiedcompiler-rt/lib/sanitizer_common/sanitizer_symbolizer_libcdep.cpp
The file was modifiedcompiler-rt/lib/sanitizer_common/sanitizer_symbolizer_posix_libcdep.cpp
The file was modifiedcompiler-rt/lib/sanitizer_common/sanitizer_symbolizer_internal.h
The file was modifiedcompiler-rt/lib/sanitizer_common/sanitizer_posix.h
The file was modifiedcompiler-rt/lib/sanitizer_common/sanitizer_symbolizer_mac.cpp
The file was modifiedcompiler-rt/test/asan/TestCases/Darwin/dladdr-demangling.cpp
Commit efe00934044810fcb8d027b675845ec7123884c3 by gornishanov
[coroutine] Fixes "cannot move instruction since its users are not
dominated by CoroBegin" problem.
Summary: Fixes https://bugs.llvm.org/show_bug.cgi?id=36578 and
https://bugs.llvm.org/show_bug.cgi?id=36296. Supersedes:
https://reviews.llvm.org/D55966
One of the fundamental transformation that CoroSplit pass performs
before splitting the coroutine is to find which values need to survive
between suspend and resume and provide a slot for them in the coroutine
frame to spill and restore the value as needed.
Coroutine frame becomes available once the storage for it was allocated
and that point is marked in the pre-split coroutine with a
llvm.coro.begin intrinsic.
FE normally puts all of the user-authored code that would be accessing
those values after llvm.coro.begin, however, sometimes instructions
accessing those values would end up prior to coro.begin. For example,
writing out a value of the parameter into the alloca done by the FE or
instructions that are added by the optimization passes such as SROA when
it rewrites allocas.
Prior to this change, CoroSplit pass would try to move instructions that
may end up accessing the values in the coroutine frame after CoroBegin.
However it would run into problems (report_fatal_error) if some of the
values would be used both in the allocation function (for example
allocator is passed as a parameter to a coroutine) and in the
use-authored body of the coroutine.
To handle this case and to simplify the instruction moving logic, this
change removes all of the instruction moving. Instead, we only change
the uses of the spilled values that are dominated by coro.begin and
leave other instructions intact.
Before:
```
%var = alloca i32
%1 = getelementptr .. %var; ; will move this one after coro.begin
%f = call i8* @llvm.coro.begin(
```
After:
```
%var = alloca i32
%1 = getelementptr .. %var; stays put
%f = call i8* @llvm.coro.begin(
``` If we discover that there is a potential write into an alloca, prior
to coro.begin we would copy its value from the alloca into the spill
slot in the coroutine frame.
Before:
```
%var = alloca i32 store .. %var ; will move this one after coro.begin
%f = call i8* @llvm.coro.begin(
```
After:
```
%var = alloca i32 store .. %var ;stays put
%f = call i8* @llvm.coro.begin(
%tmp = load %var store %tmp, %spill.slot.for.var
```
Note: This change does not handle array allocas as that is something
that C++ FE does not produce, but, it can be added in the future if need
arises
Reviewers: llvm-commits, modocache, ben-clayton, tks2103, rjmccall
Reviewed By: modocache
Subscribers: bartdesmet
Differential Revision: https://reviews.llvm.org/D66230
llvm-svn: 368949
The file was modifiedllvm/lib/Transforms/Coroutines/CoroSplit.cpp
The file was addedllvm/test/Transforms/Coroutines/coro-alloc-with-param.ll
The file was modifiedllvm/lib/Transforms/Coroutines/CoroFrame.cpp
The file was addedllvm/test/Transforms/Coroutines/coro-param-copy.ll
Commit 0630bbc7fe030999cfe76f698bc571540fdbda66 by apl
[NFCI] Always initialize BugReport const fields
Summary: Some compilers require that const fields of an object must be
explicitly initialized by the constructor. I ran into this issue
building with clang 3.8 on Ubuntu 16.04.
Reviewers: compnerd, Szelethus, NoQ
Subscribers: cfe-commits, llvm-commits
Tags: #clang
Differential Revision: https://reviews.llvm.org/D66265
llvm-svn: 368950
The file was modifiedclang/include/clang/StaticAnalyzer/Core/BugReporter/BugReporter.h
Commit 8f6a84d6c32f99064f683bd877959876c7dcfc81 by Vitaly Buka
gn build: Merge r368918
llvm-svn: 368951
The file was modifiedllvm/utils/gn/secondary/llvm/tools/llvm-reduce/BUILD.gn
Commit d65f37dbcc106bdfc37700b50f006337f2196a87 by Jonas Devlieghere
Revert "[compiler-rt] Migrate llvm::make_unique to std::make_unique"
The X-ray unit tests in compiler-rt are overriding the C++ version by
explicitly passing -std=c++11 in the compiler invocation. This poses a
problem as these tests are including LLVM headers that can now use C++14
features. I'm temporarily reverting this as I investigate the correct
solution.
llvm-svn: 368952
The file was modifiedcompiler-rt/lib/xray/tests/unit/fdr_controller_test.cpp
Commit ed3b6d1bb22786fbda1a2fadfb8bb20da7b887b6 by Jonas Devlieghere
Revert "Expose TailCallKind via the LLVM C API"
This is failing on several build bots. Reverting as discussed in
https://reviews.llvm.org/D66061.
llvm-svn: 368953
The file was modifiedllvm/tools/llvm-c-test/echo.cpp
The file was modifiedllvm/lib/IR/Core.cpp
The file was modifiedllvm/include/llvm-c/Core.h
The file was modifiedllvm/test/Bindings/llvm-c/invoke.ll
Commit d24e9eb9d2a692573bc78d0e4420720bc9216c20 by Jonas Devlieghere
[NFC] Update doc comment to fix warning.
This fixes the warning: parameter 'EnableNullFPSuppression' not found in
the function declaration [-Wdocumentation]
llvm-svn: 368954
The file was modifiedclang/include/clang/StaticAnalyzer/Core/BugReporter/BugReporterVisitors.h
Commit 14f7560020ca4c678b52f457e32518be16436dfb by craig.topper
[X86] Remove some dead code and combine some repeated code that's left.
If the width is 256 bits, then we must have AVX so the else here was
unnecessary. Once that's removed then the >= 256 bit code is identical
to the 128 bit code with a different VT so combine them.
llvm-svn: 368956
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.cpp
Commit 10e3fa28d0df4d17130fab08a2c65e6cf7d2c01b by Jonas Devlieghere
[NFC] Remove documentation comment to fix warning.
Remove the @return to fix the warning: '@returns' command used in a
comment that is attached to a function returning void [-Wdocumentation]
llvm-svn: 368957
The file was modifiedllvm/tools/llvm-reduce/deltas/ReduceGlobalVars.cpp
Commit 4ed5521cad7961566e29185b760ddad402e3ba7a by dlj
[Tooling] Add a hack to work around issues with matcher binding in
r368681.
The change in r368681 contains a (probably unintentional) behavioral
change for rewrite rules with a single matcher. Previously, the single
matcher would not need to be bound (`joinCaseMatchers` returned it
directly), even though a final DynTypeMatcher was created and bound by
`buildMatcher`. With the new change, a single matcher will be bound, in
addition to the final binding (which is now in
`buildMatchers`, but happens roughly at the same point in the overall
flow).
This patch simply duplicates the "final matcher" trick: it creates an
extra DynTypedMatcher for each rewrite rule case matcher, and
unconditionally makes it bindable. This is probably not the right
long-term fix, but it does allow existing code to continue to work with
this interface.
Subscribers: cfe-commits, gribozavr, ymandel
Tags: #clang
Differential Revision: https://reviews.llvm.org/D66273
llvm-svn: 368958
The file was modifiedclang/lib/Tooling/Refactoring/Transformer.cpp
Commit a7d4cec4372403506208bc5599502c0a9e48fc57 by Jonas Devlieghere
[NFC] Fix documentation for some utility classes.
This fixes a few warnings emitted when compiling with -Wdocumentation.
llvm-svn: 368959
The file was modifiedlldb/include/lldb/Utility/ConstString.h
The file was modifiedlldb/include/lldb/Utility/FileSpec.h
The file was modifiedlldb/source/Utility/FileSpec.cpp
Commit 4d474e078ac729d74aca406d688060c9638dd9f2 by Jonas Devlieghere
[CMake] Check for C++14 instead of C++11
Now that LLVM moved to C++14, `COMPILER_RT_HAS_STD_CXX11_FLAG` should
become `COMPILER_RT_HAS_STD_CXX14_FLAG`.
I ran into this issue when replacing llvm::make_unique with
std::make_unique in an X-ray unit test. We are correctly passing
`-std=c++14`, but this got overwritten further down the invocation by
the compiler-rt flags. Given that this unit test is using LLVM headers,
this is bound to break sooner than later, regardless of my change.
Differential revision: https://reviews.llvm.org/D66271
llvm-svn: 368960
The file was modifiedcompiler-rt/cmake/config-ix.cmake
The file was modifiedcompiler-rt/CMakeLists.txt
Commit 9cf1eab73e232c8b60b75f040d8616da38e9a99b by pozulp.llvm
[llvm-objcopy] Move duplicate tablegen from objcopy and strip into one
file
Summary: This avoids maintaining the same options in two different
places.
Reviewers: jhenderson, alexshap, rupprecht, MaskRay
Reviewed By: jhenderson, rupprecht, MaskRay
Subscribers: MaskRay, wolfgangp, jakehehrlich, abrachet, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D65991
llvm-svn: 368961
The file was modifiedllvm/tools/llvm-objcopy/ObjcopyOpts.td
The file was modifiedllvm/tools/llvm-objcopy/StripOpts.td
The file was addedllvm/tools/llvm-objcopy/CommonOpts.td
Commit 706cd705690b98b603362c6f1464795d95ea2db3 by Jonas Devlieghere
Fix variable mismatch between signature and body
I updated the signature to conform to the LLDB coding style but
accidentally forgot to update the function body.
llvm-svn: 368962
The file was modifiedlldb/source/Utility/FileSpec.cpp
Commit 9abf668c08b0a560d34c6388095bb7671055c751 by pozulp.llvm
[llvm-objdump] Add warning messages if disassembly + source for
problematic inputs
Summary: Addresses https://bugs.llvm.org/show_bug.cgi?id=41905
Reviewers: jhenderson, rupprecht, grimar
Reviewed By: jhenderson, grimar
Subscribers: RKSimon, MaskRay, hiraditya, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D62462
llvm-svn: 368963
The file was modifiedllvm/test/tools/llvm-objdump/X86/source-interleave-invalid-source.test
The file was modifiedllvm/tools/llvm-objdump/llvm-objdump.h
The file was modifiedllvm/tools/llvm-xray/func-id-helper.cpp
The file was modifiedllvm/tools/llvm-objdump/llvm-objdump.cpp
The file was modifiedllvm/lib/DebugInfo/Symbolize/DIPrinter.cpp
The file was modifiedllvm/test/tools/llvm-objdump/X86/source-interleave-no-debug-info.test
The file was modifiedllvm/lib/DebugInfo/DWARF/DWARFContext.cpp
The file was modifiedllvm/test/tools/llvm-objdump/X86/source-interleave-missing-source.test
The file was modifiedllvm/include/llvm/DebugInfo/DIContext.h
The file was modifiedllvm/tools/llvm-cfi-verify/lib/FileAnalysis.cpp
Commit 1542ff5282d3941432e7899c3359acd2e6aa992e by maskray
[ELF][PPC] Improve error message for unknown relocations
Like rLLD354040.
Previously, for unrecognized relocation types, in -no-pie mode:
  foo.o: unrecognized reloc 256
In -pie/-shared mode:
  error: can't create dynamic relocation R_PPC_xxx against symbol: yyy
in readonly segment
llvm-svn: 368964
The file was modifiedlld/ELF/Arch/PPC64.cpp
The file was modifiedlld/ELF/Arch/PPC.cpp
Commit ba39fcd8c628debb0c86721a78a09ca57b996895 by craig.topper
[X86] Remove some unreachable code from LowerBITCAST.
llvm-svn: 368965
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.cpp
Commit 57286afe4e0143f7834b71f31009a978b94f1bba by craig.topper
[X86] Disable custom type legalization for v2i32/v4i16/v8i8->f64
bitcast.
The generic legalization handles this in the same way so just use that.
llvm-svn: 368966
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.cpp
Commit a57734ba4ef2917e7bae064f2b1f592293ac8c69 by craig.topper
[X86] Disable custom type legalization for v2i32/v4i16/v8i8->i64.
The default legalization can take care of this.
llvm-svn: 368967
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.cpp
Commit dbcbbf5658d82a84eadaeab3df7535a4faa39be9 by craig.topper
[X86] Remove unneeded isel pattern for v4f32->v4i32 fp_to_sint and
conversion to MMX.
fp_to_sint is turned into X86cvttp2si during isel preprocessing. The
other redundant isel patterns were removed previously, but I missed this
one because its in the MMX td file.
llvm-svn: 368968
The file was modifiedllvm/lib/Target/X86/X86InstrMMX.td
Commit 803e849cbfa8f9a5eb5395b0417d8887cc68134a by craig.topper
[X86] Add test cases for _mm_movepi64_pi64 and _mm_movpi64_epi64.
llvm-svn: 368969
The file was modifiedclang/test/CodeGen/sse2-builtins.c
Commit 535efab2e533f98a96df31b116b5861b5e29d32d by sjoerd.meijer
[Clang] Pragma vectorize_predicate implies vectorize
New pragma "vectorize_predicate(enable)" now implies
"vectorize(enable)", and it is ignored when vectorization is disabled
with e.g.
"vectorize(disable) vectorize_predicate(enable)".
Differential Revision: https://reviews.llvm.org/D65776
llvm-svn: 368970
The file was modifiedclang/lib/CodeGen/CGLoopInfo.cpp
The file was modifiedclang/test/CodeGenCXX/pragma-loop-predicate.cpp
Commit e6409602a1f9dd3204628ceb32f5b715877a0060 by craig.topper
[X86] Make sure load is non-volatile in the MMX_X86movdq2q (loadv2i64)
isel pattern.
This pattern will narrow the load so we should make sure its not
volatile.
llvm-svn: 368971
The file was modifiedllvm/lib/Target/X86/X86InstrMMX.td
Commit 1e246b20c038d61153c7a77b8578a188d40938e2 by craig.topper
[X86] Add isel pattern to match VZEXT_MOVL and a v2i64 scalar_to_vector
bitcasted from x86mmx to MOVQ2DQ.
We already had the pattern for just the scalar to vector and bitcast,
but not the case where we wanted zeroes in the high half of the xmm.
llvm-svn: 368972
The file was modifiedllvm/test/CodeGen/X86/mmx-cvt.ll
The file was modifiedllvm/lib/Target/X86/X86InstrMMX.td
Commit d57d73daed3057ff48a1e6476a681b2ad46c268c by dorit.nuzman
[LV] fold-tail predication should be respected even with assume_safety
assume_safety implies that loads under "if's" can be safely executed
speculatively (unguarded, unmasked). However this assumption holds only
for the original user "if's", not those introduced by the compiler, such
as the fold-tail "if" that guards us from loading beyond the original
loop trip-count. Currently the combination of fold-tail and
assume-safety pragmas results in ignoring the fold-tail predicate that
guards the loads, generating unmasked loads. This patch fixes this
behavior.
Differential Revision: https://reviews.llvm.org/D66106
Reviewers: Ayal, hsaito, fhahn llvm-svn: 368973
The file was modifiedllvm/include/llvm/Transforms/Vectorize/LoopVectorizationLegality.h
The file was modifiedllvm/lib/Transforms/Vectorize/LoopVectorizationLegality.cpp
The file was modifiedllvm/test/Transforms/LoopVectorize/X86/vect.omp.force.small-tc.ll
The file was addedllvm/test/Transforms/LoopVectorize/X86/tail_folding_and_assume_safety.ll
The file was modifiedllvm/lib/Transforms/Vectorize/LoopVectorize.cpp
Commit 0a3b1b26287a6a71cc525aeb41a42f7db8a2bd8d by nuta
[llvm-readobj][MachO] Fix section type printing
Summary: Currently, llvm-readobj mistakenly decodes section type as
section attribute.
This patch fixes the bug and affected tests.
Reviewers: JDevlieghere, jhenderson, rupprecht, alexshap, echristo
Reviewed By: jhenderson, rupprecht, alexshap, echristo
Subscribers: javed.absar, rupprecht, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D66075
llvm-svn: 368974
The file was modifiedllvm/test/MC/MachO/darwin-x86_64-diff-relocs.s
The file was modifiedllvm/test/MC/MachO/indirect-symbols.s
The file was modifiedllvm/test/MC/MachO/string-table.s
The file was modifiedllvm/test/MC/MachO/darwin-complex-difference.s
The file was modifiedllvm/test/tools/dsymutil/X86/dsym-companion.test
The file was modifiedllvm/test/MC/MachO/lcomm-attributes.s
The file was modifiedllvm/test/MC/MachO/comm-1.s
The file was modifiedllvm/test/MC/MachO/x86_32-optimal_nop.s
The file was modifiedllvm/test/MC/MachO/tbss.s
The file was modifiedllvm/test/MC/MachO/tlv-reloc.s
The file was modifiedllvm/test/MC/MachO/reloc-pcrel-offset.s
The file was modifiedllvm/test/MC/MachO/data.s
The file was modifiedllvm/test/MC/MachO/section-align-1.s
The file was modifiedllvm/test/MC/MachO/pcrel-to-other-section.s
The file was modifiedllvm/test/MC/MachO/x86_64-sections.s
The file was modifiedllvm/test/MC/MachO/tlv.s
The file was modifiedllvm/test/MC/MachO/darwin-x86_64-reloc-offsets.s
The file was modifiedllvm/test/MC/MachO/absolutize.s
The file was modifiedllvm/test/MC/X86/cfi_def_cfa-crash.s
The file was modifiedllvm/test/MC/MachO/values.s
The file was modifiedllvm/test/MC/MachO/section-flags.s
The file was addedllvm/test/tools/llvm-readobj/macho-sections.test
The file was modifiedllvm/test/MC/MachO/variable-exprs.s
The file was modifiedllvm/test/MC/MachO/weakdef.s
The file was modifiedllvm/test/MC/MachO/symbol-indirect.s
The file was modifiedllvm/test/MC/MachO/x86_32-sections.s
The file was modifiedllvm/test/tools/llvm-readobj/sections.test
The file was modifiedllvm/test/MC/MachO/zero-space.s
The file was modifiedllvm/test/MC/MachO/debug_frame.s
The file was modifiedllvm/test/MC/MachO/direction_labels.s
The file was modifiedllvm/test/MC/MachO/thread_init_func.s
The file was modifiedllvm/test/tools/llvm-readobj/macho-universal-x86_64.i386.test
The file was modifiedllvm/tools/llvm-readobj/MachODumper.cpp
The file was modifiedllvm/test/MC/MachO/tdata.s
The file was modifiedllvm/test/MC/MachO/diff-with-two-sections.s
The file was modifiedllvm/test/MC/MachO/symbol-flags.s
The file was modifiedllvm/test/MC/MachO/ARM/darwin-ARM-reloc.s
The file was modifiedllvm/test/MC/MachO/absolute.s
The file was modifiedllvm/test/MC/MachO/file.s
The file was modifiedllvm/test/tools/llvm-readobj/sections-ext.test
The file was modifiedllvm/test/MC/MachO/darwin-x86_64-nobase-relocs.s
The file was modifiedllvm/test/MC/MachO/ARM/relax-thumb-ldr-literal.s
The file was modifiedllvm/test/MC/MachO/jcc.s
The file was modifiedllvm/test/MC/MachO/symbols-1.s
The file was modifiedllvm/test/MC/MachO/x86_32-symbols.s
The file was modifiedllvm/test/MC/MachO/loc.s
The file was modifiedllvm/test/MC/MachO/relax-recompute-align.s
The file was modifiedllvm/test/MC/MachO/zerofill-2.s
The file was modifiedllvm/test/MC/MachO/ARM/darwin-Thumb-reloc.s
The file was modifiedllvm/test/MC/MachO/section-align-2.s
The file was modifiedllvm/test/MC/MachO/symbol-diff.s
The file was modifiedllvm/test/MC/MachO/tls.s
The file was modifiedllvm/test/MC/MachO/zerofill-3.s
The file was modifiedllvm/test/MC/MachO/zerofill-1.s
The file was modifiedllvm/test/MC/MachO/zerofill-5.s
Commit 5c5408ce2c8c870a7365f18b9fb713c8d085f49b by Raphael Isemann
[lldb] Let LLDB depend on intrinsics_gen to fix non-deterministic module
build failures
Summary: When building with modules we currently fail randomly to build
LLDB's modules and get error messages like below:
``` In file included from <module-includes>:1: In file included from
llvm-project/llvm/include/llvm/IR/Argument.h:18:
llvm-project/llvm/include/llvm/IR/Attributes.h:74:14: fatal error:
'llvm/IR/Attributes.inc' file not found
   #include "llvm/IR/Attributes.inc"
            ^~~~~~~~~~~~~~~~~~~~~~~~
... In file included from
llvm-project/lldb/source/Plugins/ABI/SysV-arm/ABISysV_arm.cpp:9:
llvm-project/lldb/source/Plugins/ABI/SysV-arm/ABISysV_arm.h:12:10: fatal
error: could not build module 'lldb_Wrapper'
```
The reason for this is that our source files can include Clang headers
which in turn include files like Attributes.inc which are generated by
intrinsics_gen. However, it seems Clang can't express this dependency in
its CMake code, so intrinsics_gen is actually not guaranteed to be built
before we start parsing LLDB source files and Clang headers. Clang
worked around this by letting all libraries depend on intrinsics_gen,
which at least lets their builds pass.
As I haven't figured out how to solve these dependencies properly and I
want to get the LLDB+Modules build green, I suggest we copy Clang's hack
until we figure out how to get Clang's dependencies right.
Reviewers: sgraenitz, aprantl, JDevlieghere
Reviewed By: JDevlieghere
Subscribers: mgorny, javed.absar, kristof.beyls, mgrang, lldb-commits
Tags: #lldb
Differential Revision: https://reviews.llvm.org/D66208
llvm-svn: 368975
The file was modifiedlldb/CMakeLists.txt
Commit 90374f7557211992bbfb0ba51ad31ee49943f0d3 by sjoerd.meijer
[clang] Loop pragma parsing. NFC.
Just a refactoring and a tidy up.
Differential Revision: https://reviews.llvm.org/D64564
llvm-svn: 368976
The file was modifiedclang/lib/Parse/ParsePragma.cpp
Commit 46bfdb956cb805d16388c142ee2872b20896e33b by pavel
MemoryBuffer: Add a missing error-check to getOpenFileImpl
Summary: In case the function was called with a desired read size *and*
the file was not an "mmap()" candidate, the function was falling back to
a
"pread()", but it was failing to check the result of that system call.
This meant that the function would return "success" even though the read
operation failed, and it returned a buffer full of uninitialized memory.
Reviewers: rnk, dblaikie
Subscribers: kristina, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D66224
llvm-svn: 368977
The file was modifiedllvm/lib/Support/MemoryBuffer.cpp
The file was modifiedllvm/unittests/Support/MemoryBufferTest.cpp
Commit 1bd898989ca9259ae0d2bd11eb204478987081c7 by flo
[InstCombine] Precommit test case for D66216
llvm-svn: 368978
The file was addedllvm/test/Transforms/InstCombine/phi-known-bits-operand-order.ll
Commit e6e133b7007635b7445c7d15806e9e418f38866c by dkszelethus
[analyzer] Add docs for cplusplus.InnerPointer
Differential Revision: https://reviews.llvm.org/D60281
llvm-svn: 368979
The file was modifiedclang/docs/analyzer/checkers.rst
Commit a1aef90bdd9ae7febce70f96f4a05a0074c8b556 by dkszelethus
[analyzer] Warn about -analyzer-configs being meant for development
purposes only
This is more of a temporary fix, long term, we should convert
AnalyzerOptions.def into the universally beloved (*coughs*) TableGen
format, where they can more easily be separated into developer-only,
alpha, and user-facing configs.
Differential Revision: https://reviews.llvm.org/D66261
llvm-svn: 368980
The file was modifiedclang/lib/StaticAnalyzer/Frontend/CheckerRegistration.cpp
The file was modifiedclang/include/clang/Driver/CC1Options.td
Commit 04f2f32869b3a62e236cfaa134f378771e48c129 by david.green
[ARM] MVE trunc to i1 vectors
This adds patterns for selecting trunc instructions from full vectors to
i1's vectors.
Differential Revision: https://reviews.llvm.org/D66201
llvm-svn: 368981
The file was modifiedllvm/lib/Target/ARM/ARMInstrMVE.td
The file was modifiedllvm/test/CodeGen/Thumb2/mve-pred-ext.ll
Commit e5cdfbc65cac49fedba6cb3def55d62d851796ab by snortotter
[llvm-objcopy] Allow 'protected' visibility to be set when using
add-symbol
Reviewers: Maskray, rupprecht
Differential Revision: https://reviews.llvm.org/D65891
llvm-svn: 368982
The file was modifiedllvm/tools/llvm-objcopy/ObjcopyOpts.td
The file was modifiedllvm/tools/llvm-objcopy/CopyConfig.cpp
The file was modifiedllvm/test/tools/llvm-objcopy/ELF/add-symbol.test
The file was modifiedllvm/docs/CommandGuide/llvm-objcopy.rst
Commit e54ed4789f3514fc6b457ebcf9207dbcff767d20 by maskray
[ELF][AArch64] Improve error message for unknown relocations
Like rLLD354040.
Previously, for unrecognized relocation types, in -no-pie/-pie mode, we
got something like:
  foo.o: unrecognized relocation ...
In -shared mode:
  error: can't create dynamic relocation ... against symbol: yyy in
readonly segment
Delete the default case from AArch64::getRelExpr and add the error
there.
Reviewed By: grimar
Differential Revision: https://reviews.llvm.org/D66277
llvm-svn: 368983
The file was modifiedlld/ELF/Arch/AArch64.cpp
The file was addedlld/test/ELF/invalid/invalid-relocation-aarch64.test
Commit 0096d1938ef7656f4eb30c8d3cd6999b146eaa14 by sven.vanhaastregt
[Support] Fix Wundef warning
llvm-svn: 368984
The file was modifiedllvm/lib/Support/Signposts.cpp
Commit 2601cdd3aed5d90b574e4a681462667b25577bcd by russell.gallop
Revert rL368939 "Remove LVALUE / RVALUE workarounds"
This reverts commit cad8356d699b36c73abb267f65db575ddacbd652.
To unbreak Windows bots
llvm-svn: 368985
The file was modifiedclang/include/clang/StaticAnalyzer/Core/PathSensitive/ExplodedGraph.h
The file was modifiedllvm/unittests/ADT/OptionalTest.cpp
The file was modifiedllvm/include/llvm/ADT/Optional.h
The file was modifiedllvm/include/llvm/Support/Compiler.h
Commit de1d6c822079b3e7565bb3e48865318bee51761c by flo
Add ptrmask intrinsic
This patch adds a ptrmask intrinsic which allows masking out bits of a
pointer that must be zero when accessing it, because of ABI alignment
requirements or a restriction of the meaningful bits of a pointer
through the data layout.
This avoids doing a ptrtoint/inttoptr round trip in some cases (e.g.
tagged pointers) and allows us to not lose information about the
underlying object.
Reviewers: nlopes, efriedma, hfinkel, sanjoy, jdoerfert, aqjune
Reviewed by: sanjoy, jdoerfert
Differential Revision: https://reviews.llvm.org/D59065
llvm-svn: 368986
The file was addedllvm/test/CodeGen/X86/lower-ptrmask.ll
The file was modifiedllvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
The file was addedllvm/test/CodeGen/AArch64/lower-ptrmask.ll
The file was modifiedllvm/docs/LangRef.rst
The file was modifiedllvm/include/llvm/IR/Intrinsics.td
Commit 643adb55769ecb12e0377dab60de50def15d2cea by sander.desmalen
[AArch64] Change location of frame-record within callee-save area.
This patch changes the location of the frame-record (FP, LR) to the 
bottom of the callee-saved area. According to the AAPCS the location of
the frame-record within the stackframe is unspecified (section 5.2.3 The
Frame Pointer), so the compiler should be free to choose a different
location.
The reason for changing the location of the frame-record is to prepare
the frame for allocating an SVE area below the callee-saves. This way
the  compiler can use the VL-scaled addressing modes to directly access
SVE  objects from the frame-pointer.
            :                :  
       | stack |        | stack |
       |  args |        |  args |
       +-------+        +-------+
       |  x30  |        |  x19  |
       |  x29  |        |  x20  |
FP -> |- - - -|        |  x21  |
       |  x19  |   ==>  |  x22  |
       |  x20  |        |- - - -|
       |  x21  |        |  x30  |
       |  x22  |        |  x29  |
       +-------+        +-------+ <- FP
       |///////|        |///////|         // realignment gap
       |- - - -|        |- - - -|
       |spills/|        |spills/|
       | locals|        | locals|
SP -> +-------+        +-------+ <- SP
Things to point out:
- The algorithm to find a paired register should be prevented from
accidentally pairing some callee-saved register with LR that is not
FP, since they should always be paired together when the frame
has a frame-record.
- For Darwin platforms the location of the frame-record is unchanged,
since the unwind encoding does not allow for encoding this position
dynamically and other tools currently depend on the former layout.
Reviewers: efriedma, rovka, rengolin, thegameg, greened, t.p.northover
Reviewed By: efriedma
Differential Revision: https://reviews.llvm.org/D65653
llvm-svn: 368987
The file was modifiedllvm/test/CodeGen/AArch64/fast-isel-sp-adjust.ll
The file was modifiedllvm/lib/Target/AArch64/AArch64RegisterInfo.cpp
The file was modifiedllvm/test/CodeGen/AArch64/seh-finally.ll
The file was modifiedllvm/test/CodeGen/AArch64/wineh-try-catch.ll
The file was modifiedllvm/test/CodeGen/AArch64/wineh-frame5.mir
The file was modifiedllvm/test/CodeGen/AArch64/unfold-masked-merge-scalar-constmask-interleavedbits.ll
The file was modifiedllvm/test/CodeGen/AArch64/wineh-try-catch-realign.ll
The file was modifiedllvm/test/CodeGen/AArch64/cgp-usubo.ll
The file was modifiedllvm/test/CodeGen/AArch64/aarch64-dynamic-stack-layout.ll
The file was modifiedllvm/test/CodeGen/AArch64/reverse-csr-restore-seq.mir
The file was modifiedllvm/test/CodeGen/AArch64/stack-guard-reassign.ll
The file was modifiedllvm/test/CodeGen/AArch64/unreachable-emergency-spill-slot.mir
The file was modifiedllvm/test/CodeGen/AArch64/addsub-constant-folding.ll
The file was modifiedllvm/test/CodeGen/AArch64/sink-copy-for-shrink-wrap.ll
The file was modifiedllvm/test/CodeGen/AArch64/regress-w29-reserved-with-fp.ll
The file was modifiedllvm/test/CodeGen/AArch64/irg_sp_tagp.ll
The file was modifiedllvm/test/CodeGen/AArch64/win64_vararg.ll
The file was modifiedllvm/test/CodeGen/AArch64/wineh_shrinkwrap.mir
The file was modifiedllvm/test/CodeGen/AArch64/unfold-masked-merge-scalar-constmask-interleavedbytehalves.ll
The file was modifiedllvm/lib/Target/AArch64/AArch64CallingConvention.td
The file was modifiedllvm/test/CodeGen/AArch64/alloca.ll
The file was modifiedllvm/test/CodeGen/AArch64/wineh-frame7.mir
The file was modifiedllvm/test/CodeGen/AArch64/shadow-call-stack.ll
The file was modifiedllvm/lib/Target/AArch64/AArch64FrameLowering.cpp
The file was modifiedllvm/test/CodeGen/AArch64/unfold-masked-merge-scalar-constmask-innerouter.ll
The file was modifiedllvm/test/CodeGen/AArch64/spill-stack-realignment.mir
The file was modifiedllvm/test/CodeGen/AArch64/sponentry.ll
The file was modifiedllvm/test/CodeGen/AArch64/aarch64-vector-pcs.mir
The file was modifiedllvm/test/CodeGen/AArch64/arm64-alloca-frame-pointer-offset.ll
The file was modifiedllvm/test/CodeGen/AArch64/stack-guard-vaarg.ll
The file was modifiedllvm/test/CodeGen/AArch64/unfold-masked-merge-scalar-constmask-lowhigh.ll
The file was modifiedllvm/test/CodeGen/AArch64/unfold-masked-merge-scalar-variablemask.ll
Commit 0ff2296a49aacdb6c3896e7a2334328dcbf55c0d by david.green
[ARM] MVE predicate store patterns
Stack loads and stores were already working, but direct stores were not.
This adds the patterns for them, same as predicate loads.
Differential Revision: https://reviews.llvm.org/D66213
llvm-svn: 368988
The file was modifiedllvm/lib/Target/ARM/ARMInstrMVE.td
The file was addedllvm/test/CodeGen/Thumb2/mve-pred-loadstore.ll
Commit d596dd81139955a62fb2e9ca2dace14ffb6a75de by benny.kra
Bump llvm-go to C++14
llvm-svn: 368989
The file was modifiedllvm/tools/llvm-go/llvm-go.go
The file was modifiedllvm/bindings/go/README.txt
The file was modifiedllvm/bindings/go/llvm/llvm_config.go.in
Commit 37508d3dd94b0154861a90b1909d17b01400df99 by benny.kra
Replace llvm::integer_sequence and friends with the C++14 standard
version
The implementation in libc++ takes O(1) compile time, ours was O(n).
llvm-svn: 368990
The file was modifiedclang/include/clang/ASTMatchers/ASTMatchersInternal.h
The file was modifiedclang/lib/CodeGen/EHScopeStack.h
The file was modifiedclang-tools-extra/clangd/unittests/Matchers.h
The file was modifiedllvm/include/llvm/IR/PassManager.h
The file was modifiedclang/include/clang/Tooling/Refactoring/RefactoringActionRulesInternal.h
The file was modifiedclang/include/clang/Sema/Sema.h
The file was modifiedllvm/include/llvm/ExecutionEngine/Orc/RPCSerialization.h
The file was modifiedllvm/include/llvm/Support/Format.h
The file was modifiedclang-tools-extra/clangd/Function.h
The file was modifiedllvm/include/llvm/ExecutionEngine/Orc/RPCUtils.h
The file was modifiedllvm/include/llvm/ADT/STLExtras.h
Commit e1bc32bddf2edd1c91154f397f2ba07920d8330d by benny.kra
[clangd] llvm::integer_sequence -> std::integer_sequence.
llvm-svn: 368991
The file was modifiedclang-tools-extra/clangd/Function.h
Commit 5e9a16408ced992d7e2ac6f0acf2b9a1ee0dd862 by benny.kra
[ADT] PointerUnion: Use C++14 constexpr std::min
llvm-svn: 368992
The file was modifiedllvm/include/llvm/ADT/PointerUnion.h
Commit fd72bf21c958ae2fdfaa8654df55367c72575d3a by flo
[ValueTracking] Add MustPreserveNullness arg to functions analyzing
calls. (NFC)
Some uses of getArgumentAliasingToReturnedPointer and
isIntrinsicReturningPointerAliasingArgumentWithoutCapturing require the
calls/intrinsics to preserve the nullness of the argument.
For alias analysis, the nullness property does not really come into
play.
This patch explicitly sets it to true. In D61669, the alias analysis
uses will be switched to not require preserving nullness.
Reviewers: nlopes, efriedma, hfinkel, sanjoy, aqjune, jdoerfert
Reviewed By: jdoerfert
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D64150
llvm-svn: 368993
The file was modifiedllvm/lib/Analysis/BasicAliasAnalysis.cpp
The file was modifiedllvm/lib/Analysis/ValueTracking.cpp
The file was modifiedllvm/include/llvm/Analysis/ValueTracking.h
The file was modifiedllvm/lib/Analysis/CaptureTracking.cpp
The file was modifiedllvm/lib/Analysis/Loads.cpp
Commit 7aa0dbb664ea05e233c503c009052f8682fc0f62 by Andrea_DiBiagio
[MCA] Slightly refactor the logic in ResourceManager. NFCI
This patch slightly changes the API in the attempt to simplify resource
buffer queries. It is done in preparation for a patch that will enable
support for macro fusion.
llvm-svn: 368994
The file was modifiedllvm/lib/MCA/HardwareUnits/Scheduler.cpp
The file was modifiedllvm/include/llvm/MCA/Instruction.h
The file was modifiedllvm/lib/MCA/HardwareUnits/ResourceManager.cpp
The file was modifiedllvm/lib/MCA/InstrBuilder.cpp
The file was modifiedllvm/lib/MCA/Stages/ExecuteStage.cpp
The file was modifiedllvm/include/llvm/MCA/HardwareUnits/Scheduler.h
The file was modifiedllvm/include/llvm/MCA/HardwareUnits/ResourceManager.h
Commit 57d459309dbbf252dfee7d235f9b17936abca3ad by spatel
[SDAG][x86] check for relaxed math when matching an FP reduction
If the last step in an FP add reduction allows reassociation and doesn't
care about -0.0, then we are free to recognize that computation as a
reduction that may reorder the intermediate steps.
This is requested directly by PR42705:
https://bugs.llvm.org/show_bug.cgi?id=42705 and solves PR42947 (if
horizontal math instructions are actually faster than the alternative):
https://bugs.llvm.org/show_bug.cgi?id=42947
Differential Revision: https://reviews.llvm.org/D66236
llvm-svn: 368995
The file was modifiedllvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
The file was modifiedllvm/test/CodeGen/X86/haddsub.ll
The file was modifiedllvm/test/CodeGen/X86/vector-reduce-fadd-fast.ll
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.cpp
Commit 3a99101812de51ac452bd078eab2474eac5d43ce by david.green
[ARM] Fix alignment checks for BE VLDRH
We need to allow any alignment at least 2, not just exactly 2, so that
the big endian loads and stores can be selected successfully. I've also
added extra BE testing for the load and store tests.
Thanks to Oliver for the report.
Differential Revision: https://reviews.llvm.org/D66222
llvm-svn: 368996
The file was modifiedllvm/test/CodeGen/Thumb2/mve-ldst-postinc.ll
The file was modifiedllvm/test/CodeGen/Thumb2/mve-ldst-offset.ll
The file was modifiedllvm/test/CodeGen/Thumb2/mve-ldst-preinc.ll
The file was modifiedllvm/lib/Target/ARM/ARMInstrMVE.td
Commit 2a903c0b679bae1919f9fc01f78e4bc6cff2add0 by shkzhang
[CodeGen] Do the Simple Early Return in block-placement pass to optimize
the blocks
Summary:
This patch has trigger a bug of r368339, and the r368339 has been
reverted, So upstream this patch again.
In `block-placement` pass, it will create some patterns for
unconditional we can do the simple early retrun. But the `early-ret`
pass is before `block-placement`, we don't want to run it again. This
patch is to do the simple early return to optimize the blocks at the
last of `block-placement`.
Reviewed By: efriedma
Differential Revision: https://reviews.llvm.org/D63972
llvm-svn: 368997
The file was modifiedllvm/lib/CodeGen/MachineBlockPlacement.cpp
The file was modifiedllvm/test/CodeGen/PowerPC/block-placement.mir
Commit ed804dad1e6849c5760dee451c5ce6459632d552 by llvm-dev
[DAGCombine] MergeConsecutiveStores - fix cppcheck/MSVC extension
warning. NFCI.
Set the StartIdx type to size_t so that it matches the StoreNodes
SmallVector size() and index types.
Silences the MSVC analyzer warning that unsigned increment might
overflow before exceeding size_t on 64-bit targets - this isn't likely
to happen but it means we use consistent types and reduces the warning
"noise" a little.
llvm-svn: 368998
The file was modifiedllvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
Commit dc23c832f4f7e5ae8204acfe800bdb611525c8bd by hahnjo
[OpenMP] Turn on -Wall compiler warnings by default
Instead, maintain a list of disabled options to still build libomp and
libomptarget without warnings. This includes -Wno-error and
-Wno-pedantic to silence warnings that LLVM enables when building
in-tree.
I tested the following compilers:
* Clang 6.0, 7.0, 8.0
* GCC 4.8.5 (CentOS 7), GCC 6, 7, 8, 9
* Intel Compiler 16, 17, 18, 19
RFC thread on openmp-dev mailing list:
http://lists.llvm.org/pipermail/openmp-dev/2019-August/002668.html
Differential Revision: https://reviews.llvm.org/D65867
llvm-svn: 368999
The file was modifiedopenmp/runtime/cmake/LibompHandleFlags.cmake
The file was modifiedopenmp/cmake/HandleOpenMPOptions.cmake
The file was modifiedopenmp/cmake/config-ix.cmake
The file was modifiedopenmp/runtime/cmake/config-ix.cmake
Commit 2fc20f652cd848abdbfc40b6ae7fc0b0b403ea7d by Raphael Isemann
[lldb][NFC] Refactor remaining completion logic to use
CompletionRequests
This patch moves the remaining completion functions from the old
completion API (that used several variables) to just passing a single
CompletionRequest.
This is for the most part a simple change as we just replace the old
arguments with a single CompletionRequest argument.
There are a few places where I had to create new CompletionRequests in
the called functions as CompletionRequests itself are immutable and
don't expose their internal match list anymore. This means that if a
function wanted to change the CompletionRequest or directly access the
result list, we need to work around this by creating a new
CompletionRequest and a temporary match/description list.
Preparation work for rdar://53769355
llvm-svn: 369000
The file was modifiedlldb/source/Core/IOHandler.cpp
The file was modifiedlldb/source/Expression/REPL.cpp
The file was modifiedlldb/include/lldb/Core/IOHandler.h
The file was modifiedlldb/source/Interpreter/CommandInterpreter.cpp
The file was modifiedlldb/source/Host/common/Editline.cpp
The file was modifiedlldb/source/API/SBCommandInterpreter.cpp
The file was modifiedlldb/include/lldb/Expression/REPL.h
The file was modifiedlldb/include/lldb/Interpreter/CommandInterpreter.h
The file was modifiedlldb/include/lldb/Utility/CompletionRequest.h
The file was modifiedlldb/include/lldb/Host/Editline.h
Commit fb72a03f85dc657d54908387db485b5dac8deb94 by hahnjo
[OMPT] Resolve warnings because of ints in if conditions
The implementation status can only be one of ompt_event_UNIMPLEMENTED =
ompt_set_never = 1 ompt_event_MAY_ALWAYS = ompt_set_always = 5
In both cases, the condition was already true, so just remove the check.
Differential Revision: https://reviews.llvm.org/D65869
llvm-svn: 369001
The file was modifiedopenmp/runtime/cmake/config-ix.cmake
The file was modifiedopenmp/runtime/cmake/LibompHandleFlags.cmake
The file was modifiedopenmp/runtime/src/ompt-general.cpp
Commit 4d77e50e6ede51cee37f42f706d8f48b2f6f8acb by hahnjo
[OpenMP] Remove 'unnecessary parentheses'
The variables in kmp_lock.cpp are really arrays of function pointers
that return void or int, not pointers to functions that return void* or
int*. The other changes are only cosmetic.
Differential Revision: https://reviews.llvm.org/D65870
llvm-svn: 369002
The file was modifiedopenmp/runtime/cmake/LibompHandleFlags.cmake
The file was modifiedopenmp/runtime/src/kmp_lock.h
The file was modifiedopenmp/runtime/src/kmp_gsupport.cpp
The file was modifiedopenmp/runtime/src/kmp_lock.cpp
The file was modifiedopenmp/runtime/src/kmp_runtime.cpp
The file was modifiedopenmp/runtime/cmake/config-ix.cmake
Commit d2ae0c4f443c47e68d33852d2953811648a153ed by hahnjo
[OpenMP] Enable warning about "implicit fallthrough"
Fix last warned location in ittnotify_static.cpp using the defined macro
KMP_FALLTHROUGH().
Differential Revision: https://reviews.llvm.org/D65871
llvm-svn: 369003
The file was modifiedopenmp/cmake/config-ix.cmake
The file was modifiedopenmp/cmake/HandleOpenMPOptions.cmake
The file was modifiedopenmp/runtime/src/thirdparty/ittnotify/ittnotify_static.cpp
The file was modifiedopenmp/runtime/cmake/LibompHandleFlags.cmake
The file was modifiedopenmp/runtime/cmake/config-ix.cmake
Commit 4b91e3f9aa2f9ae51e37ffe9e77d3ca15bcd0112 by grimar
[lib/Object] - Remove objdump-file-header.test
objdump-file-header.test is placed in the wrong folder. I removed it and
updated the existent llvm-objdump test cases with the updated content of
the file removed.
Differential revision: https://reviews.llvm.org/D66288
llvm-svn: 369004
The file was modifiedllvm/test/tools/llvm-objdump/file-headers-coff.test
The file was modifiedllvm/test/tools/llvm-objdump/file-headers-elf.test
The file was removedllvm/test/Object/objdump-file-header.test
Commit 9880b5dd2178b59b5f0204f628724abf5bc41f3d by benny.kra
[clangd] Don't use Bind() where C++14 move capture works
llvm-svn: 369005
The file was modifiedclang-tools-extra/clangd/ClangdLSPServer.cpp
The file was modifiedclang-tools-extra/clangd/ClangdServer.cpp
The file was modifiedclang-tools-extra/clangd/TUScheduler.cpp
The file was modifiedclang-tools-extra/clangd/unittests/TUSchedulerTests.cpp
The file was modifiedclang-tools-extra/clangd/ClangdLSPServer.h
Commit 9fd81dc139027751ffe58dcc7c04ee1ff9ad0a6f by Jinsong Ji
[PowerPC] Use xxleqv to set all one vector IMM(-1).
Summary: xxspltib/vspltisb are 3 cycle PM instructions, xxleqv is 2
cycle ALU instruction.
We should use xxleqv to set all one vectors.
Reviewers: hfinkel, nemanjai, steven.zhang
Subscribers: hiraditya, kbarton, MaskRay, shchenz, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D65529
llvm-svn: 369006
The file was modifiedllvm/lib/Target/PowerPC/PPCInstrInfo.td
The file was modifiedllvm/test/CodeGen/PowerPC/build-vector-allones.ll
The file was modifiedllvm/lib/Target/PowerPC/P9InstrResources.td
The file was modifiedllvm/test/CodeGen/PowerPC/sat-add.ll
The file was modifiedllvm/test/CodeGen/PowerPC/vec_add_sub_doubleword.ll
The file was modifiedllvm/test/CodeGen/PowerPC/vselect-constants.ll
The file was modifiedllvm/test/CodeGen/PowerPC/power9-moves-and-splats.ll
The file was modifiedllvm/lib/Target/PowerPC/PPCInstrInfo.cpp
The file was modifiedllvm/test/CodeGen/PowerPC/setcc-logic.ll
The file was modifiedllvm/test/CodeGen/PowerPC/signbit-shift.ll
The file was modifiedllvm/lib/Target/PowerPC/PPCInstrVSX.td
Commit 983e9118a29f207c31f336229849d64dd26d8347 by llvm-dev
Remove BitVector.h include. NFCI.
BitVector type isn't used at all in the cpp file.
llvm-svn: 369007
The file was modifiedllvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
Commit d4df81f463e41529dbe6a26277bcb27c968a5d4a by llvm-dev
Remove SmallBitVector.h include. NFCI.
SmallBitVector/BitVector types aren't used at all in the cpp file.
llvm-svn: 369008
The file was modifiedllvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
Commit 8903433bb2851f611557a4191eb0b6fd4b0f1ed9 by Jonas Devlieghere
Re-land "[compiler-rt] Migrate llvm::make_unique to std::make_unique"
With the compiler-rt check for C++14 updated in r368960, this should now
be fine to land.
llvm-svn: 369009
The file was modifiedcompiler-rt/lib/xray/tests/unit/fdr_controller_test.cpp
Commit 3de2f0330f4b7b4b099b21a030e19c442f536a83 by Andrea_DiBiagio
[MCA] Slightly refactor class RetireControlUnit, and add the ability to
override the mask of used buffered resources in class mca::Instruction.
NFCI
This patch teaches the RCU how to peek 'next' RCUTokens. A new method
has been added to the RetireControlUnit class with the goal of
minimizing the complexity of follow-up patches that will enable
macro-fusion support in mca.
This patch also adds method Instruction::getNumMicroOpcodes() to
simplify common interactions with the instruction descriptor (a pattern
quite common in some pipeline stages).
Added the ability to override the default set of consumed scheduler
resources
(this -again- is to simplify future patches that add support for
macro-op fusion).
No functional change intended.
llvm-svn: 369010
The file was modifiedllvm/include/llvm/MCA/Instruction.h
The file was modifiedllvm/lib/MCA/Stages/RetireStage.cpp
The file was modifiedllvm/lib/MCA/HardwareUnits/Scheduler.cpp
The file was modifiedllvm/lib/MCA/Stages/DispatchStage.cpp
The file was modifiedllvm/lib/MCA/HardwareUnits/RetireControlUnit.cpp
The file was modifiedllvm/include/llvm/MCA/HardwareUnits/RetireControlUnit.h
The file was modifiedllvm/lib/MCA/Stages/ExecuteStage.cpp
Commit e7c220c0ef94c434ffec8bedbf127e7ed8dcf441 by Justin Bogner
[cmake] install_symlink should obey DESTDIR unconditionally
Setting DESTDIR was erroneously buried under a condition here - if it's
set it should always be used.
llvm-svn: 369011
The file was modifiedllvm/cmake/modules/LLVMInstallSymlink.cmake
Commit 1c34d10776828c0756ff4f0b2b9aa8bda2be348a by sivachandra
Add a proposal for a libc project under the LLVM umbrella.
Reviewers: chandlerc, dlj, echristo, hfinkel, jfb, zturner
Subscribers: dexonsmith, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D64939
llvm-svn: 369012
The file was addedllvm/docs/Proposals/LLVMLibC.rst
Commit 0eaee545eef49ff9498234d3a51a5cbde59bf976 by Jonas Devlieghere
[llvm] Migrate llvm::make_unique to std::make_unique
Now that we've moved to C++14, we no longer need the llvm::make_unique
implementation from STLExtras.h. This patch is a mechanical replacement
of (hopefully) all the llvm::make_unique instances across the monorepo.
llvm-svn: 369013
The file was modifiedllvm/unittests/DebugInfo/PDB/PDBApiTest.cpp
The file was modifiedllvm/lib/CodeGen/MIRParser/MIRParser.cpp
The file was modifiedllvm/unittests/Support/FileCheckTest.cpp
The file was modifiedllvm/lib/DebugInfo/PDB/Native/NativeSession.cpp
The file was modifiedllvm/unittests/Support/Casting.cpp
The file was modifiedllvm/lib/Target/WebAssembly/WebAssemblyTargetMachine.cpp
The file was modifiedllvm/lib/LTO/ThinLTOCodeGenerator.cpp
The file was modifiedllvm/tools/llvm-readobj/COFFDumper.cpp
The file was modifiedllvm/lib/Transforms/Instrumentation/ControlHeightReduction.cpp
The file was modifiedllvm/lib/CodeGen/MachineOptimizationRemarkEmitter.cpp
The file was modifiedllvm/unittests/CodeGen/AArch64SelectionDAGTest.cpp
The file was modifiedllvm/lib/Target/NVPTX/NVPTXTargetMachine.cpp
The file was modifiedllvm/tools/llvm-objcopy/MachO/MachOReader.cpp
The file was modifiedllvm/lib/LTO/LTOCodeGenerator.cpp
The file was modifiedllvm/lib/Transforms/Instrumentation/IndirectCallPromotion.cpp
The file was modifiedllvm/utils/TableGen/X86DisassemblerTables.cpp
The file was modifiedllvm/lib/DebugInfo/PDB/Native/NativeRawSymbol.cpp
The file was modifiedllvm/lib/Analysis/DependenceAnalysis.cpp
The file was modifiedllvm/lib/Target/AArch64/AArch64A57FPLoadBalancing.cpp
The file was modifiedllvm/unittests/ExecutionEngine/Orc/RTDyldObjectLinkingLayerTest.cpp
The file was modifiedllvm/lib/IR/RemarkStreamer.cpp
The file was modifiedllvm/lib/MCA/Context.cpp
The file was modifiedllvm/lib/Target/ARM/ARMTargetMachine.cpp
The file was modifiedllvm/docs/tutorial/BuildingAJIT1.rst
The file was modifiedllvm/lib/Target/RISCV/AsmParser/RISCVAsmParser.cpp
The file was modifiedllvm/examples/LLJITExamples/ExampleModules.h
The file was modifiedllvm/include/llvm/Analysis/RegionInfoImpl.h
The file was modifiedllvm/tools/llvm-objdump/MachODump.cpp
The file was modifiedllvm/lib/Target/AArch64/AsmParser/AArch64AsmParser.cpp
The file was modifiedllvm/unittests/IR/CFGBuilder.cpp
The file was modifiedllvm/tools/llvm-objcopy/COFF/Reader.cpp
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPUHSAMetadataStreamer.h
The file was modifiedllvm/unittests/Target/AArch64/InstSizes.cpp
The file was modifiedllvm/lib/Target/X86/AsmParser/X86Operand.h
The file was modifiedllvm/tools/llvm-objcopy/ELF/Object.h
The file was modifiedllvm/utils/TableGen/CodeGenTarget.cpp
The file was modifiedllvm/tools/llvm-pdbutil/BytesOutputStyle.cpp
The file was modifiedllvm/lib/LTO/Caching.cpp
The file was modifiedllvm/unittests/ExecutionEngine/Orc/LegacyRTDyldObjectLinkingLayerTest.cpp
The file was modifiedllvm/lib/Target/AMDGPU/SIPeepholeSDWA.cpp
The file was modifiedllvm/include/llvm/IR/ModuleSummaryIndex.h
The file was modifiedllvm/lib/Analysis/MemorySSA.cpp
The file was modifiedllvm/lib/AsmParser/Parser.cpp
The file was modifiedllvm/unittests/Support/Host.cpp
The file was modifiedllvm/unittests/ADT/STLExtrasTest.cpp
The file was modifiedllvm/unittests/MC/DwarfLineTables.cpp
The file was modifiedllvm/lib/Target/WebAssembly/WebAssemblyCFGSort.cpp
The file was modifiedllvm/lib/ProfileData/ProfileSummaryBuilder.cpp
The file was modifiedllvm/lib/Target/Hexagon/HexagonVLIWPacketizer.cpp
The file was modifiedllvm/lib/TableGen/TGParser.cpp
The file was modifiedllvm/examples/SpeculativeJIT/SpeculativeJIT.cpp
The file was modifiedllvm/tools/llvm-stress/llvm-stress.cpp
The file was modifiedllvm/examples/Kaleidoscope/BuildingAJIT/Chapter4/toy.cpp
The file was modifiedllvm/unittests/DebugInfo/CodeView/TypeIndexDiscoveryTest.cpp
The file was modifiedllvm/lib/Transforms/Utils/LoopSimplify.cpp
The file was modifiedllvm/lib/Option/ArgList.cpp
The file was modifiedllvm/lib/IR/LLVMContextImpl.cpp
The file was modifiedllvm/lib/XRay/FDRRecordProducer.cpp
The file was modifiedllvm/lib/Target/Lanai/MCTargetDesc/LanaiELFObjectWriter.cpp
The file was modifiedllvm/examples/Kaleidoscope/BuildingAJIT/Chapter5/KaleidoscopeJIT.h
The file was modifiedllvm/lib/Analysis/LazyValueInfo.cpp
The file was modifiedllvm/lib/Transforms/IPO/SCCP.cpp
The file was modifiedllvm/unittests/ADT/IteratorTest.cpp
The file was modifiedllvm/lib/Remarks/YAMLRemarkSerializer.cpp
The file was modifiedllvm/examples/ParallelJIT/ParallelJIT.cpp
The file was modifiedllvm/lib/MCA/Stages/EntryStage.cpp
The file was modifiedllvm/lib/Target/PowerPC/MCTargetDesc/PPCMachObjectWriter.cpp
The file was modifiedllvm/docs/tutorial/MyFirstLanguageFrontend/LangImpl02.rst
The file was modifiedllvm/lib/CodeGen/GlobalISel/IRTranslator.cpp
The file was modifiedllvm/lib/Remarks/RemarkSerializer.cpp
The file was modifiedllvm/lib/Remarks/YAMLRemarkParser.cpp
The file was modifiedllvm/tools/llvm-cov/SourceCoverageView.cpp
The file was modifiedllvm/tools/dsymutil/MachOUtils.cpp
The file was modifiedllvm/lib/Target/AMDGPU/GCNIterativeScheduler.cpp
The file was modifiedllvm/lib/Transforms/Instrumentation/PGOInstrumentation.cpp
The file was modifiedllvm/include/llvm/CodeGen/LiveInterval.h
The file was modifiedllvm/lib/Target/X86/X86CondBrFolding.cpp
The file was modifiedllvm/include/llvm/ExecutionEngine/Orc/RTDyldObjectLinkingLayer.h
The file was modifiedllvm/include/llvm/Support/GenericDomTreeConstruction.h
The file was modifiedllvm/lib/Target/PowerPC/MCTargetDesc/PPCXCOFFObjectWriter.cpp
The file was modifiedllvm/unittests/ExecutionEngine/ExecutionEngineTest.cpp
The file was modifiedllvm/lib/DebugInfo/PDB/Native/NativeTypeFunctionSig.cpp
The file was modifiedllvm/lib/ObjectYAML/ELFEmitter.cpp
The file was modifiedllvm/unittests/Support/TrigramIndexTest.cpp
The file was modifiedllvm/lib/CodeGen/LiveDebugValues.cpp
The file was modifiedllvm/include/llvm/ExecutionEngine/Orc/LazyReexports.h
The file was modifiedllvm/lib/Support/JSON.cpp
The file was modifiedllvm/include/llvm/ExecutionEngine/Orc/CompileOnDemandLayer.h
The file was modifiedllvm/lib/Transforms/IPO/FunctionImport.cpp
The file was modifiedllvm/lib/Analysis/OrderedInstructions.cpp
The file was modifiedllvm/unittests/Transforms/Utils/ValueMapperTest.cpp
The file was modifiedllvm/lib/Target/Mips/MipsTargetMachine.cpp
The file was modifiedllvm/lib/Target/RISCV/RISCVTargetMachine.cpp
The file was modifiedllvm/unittests/FuzzMutate/StrategiesTest.cpp
The file was modifiedllvm/lib/Target/AMDGPU/SIModeRegister.cpp
The file was modifiedllvm/lib/ExecutionEngine/Orc/LLJIT.cpp
The file was modifiedllvm/tools/lli/lli.cpp
The file was modifiedllvm/tools/llvm-rtdyld/llvm-rtdyld.cpp
The file was modifiedllvm/unittests/Linker/LinkModulesTest.cpp
The file was modifiedllvm/include/llvm/CodeGen/TargetPassConfig.h
The file was modifiedllvm/lib/WindowsManifest/WindowsManifestMerger.cpp
The file was modifiedllvm/unittests/XRay/FDRProducerConsumerTest.cpp
The file was modifiedllvm/tools/gold/gold-plugin.cpp
The file was modifiedllvm/lib/CodeGen/AsmPrinter/CodeViewDebug.cpp
The file was modifiedllvm/include/llvm/CodeGen/PBQP/Math.h
The file was modifiedllvm/lib/Target/PowerPC/AsmParser/PPCAsmParser.cpp
The file was modifiedllvm/include/llvm/IR/Metadata.h
The file was modifiedllvm/lib/MC/WasmObjectWriter.cpp
The file was modifiedllvm/lib/ExecutionEngine/OProfileJIT/OProfileJITEventListener.cpp
The file was modifiedllvm/lib/Target/SystemZ/AsmParser/SystemZAsmParser.cpp
The file was modifiedllvm/lib/Target/WebAssembly/AsmParser/WebAssemblyAsmParser.cpp
The file was modifiedllvm/lib/Target/X86/MCTargetDesc/X86WinCOFFTargetStreamer.cpp
The file was modifiedllvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUELFObjectWriter.cpp
The file was modifiedllvm/lib/Analysis/AssumptionCache.cpp
The file was modifiedllvm/lib/Target/MSP430/AsmParser/MSP430AsmParser.cpp
The file was modifiedllvm/lib/Target/WebAssembly/MCTargetDesc/WebAssemblyWasmObjectWriter.cpp
The file was modifiedllvm/tools/dsymutil/DwarfLinker.cpp
The file was modifiedllvm/lib/Support/VirtualFileSystem.cpp
The file was modifiedllvm/lib/DebugInfo/PDB/PDBSymbolFunc.cpp
The file was modifiedllvm/lib/ExecutionEngine/Orc/CompileOnDemandLayer.cpp
The file was modifiedllvm/docs/ORCv2.rst
The file was modifiedllvm/examples/Kaleidoscope/Chapter6/toy.cpp
The file was modifiedllvm/tools/llvm-lto/llvm-lto.cpp
The file was modifiedllvm/lib/MC/MCAsmStreamer.cpp
The file was modifiedllvm/lib/Transforms/Scalar/LoopUnswitch.cpp
The file was modifiedllvm/tools/llvm-pdbutil/llvm-pdbutil.cpp
The file was modifiedllvm/lib/Analysis/LegacyDivergenceAnalysis.cpp
The file was modifiedllvm/lib/CodeGen/TargetPassConfig.cpp
The file was modifiedllvm/lib/Target/BPF/BTFDebug.cpp
The file was modifiedllvm/unittests/CodeGen/GlobalISel/PatternMatchTest.cpp
The file was modifiedllvm/unittests/ProfileData/InstrProfTest.cpp
The file was modifiedllvm/lib/Target/ARC/ARCTargetMachine.cpp
The file was modifiedllvm/lib/DebugInfo/PDB/Native/TpiStreamBuilder.cpp
The file was modifiedllvm/lib/MCA/InstrBuilder.cpp
The file was modifiedllvm/lib/Transforms/Scalar/EarlyCSE.cpp
The file was modifiedllvm/unittests/IR/TimePassesTest.cpp
The file was modifiedllvm/tools/dsymutil/MachODebugMapParser.cpp
The file was modifiedllvm/examples/Kaleidoscope/Chapter9/toy.cpp
The file was modifiedllvm/lib/TableGen/Record.cpp
The file was modifiedllvm/lib/Target/SystemZ/SystemZTargetMachine.cpp
The file was modifiedllvm/lib/Target/X86/X86TargetMachine.cpp
The file was modifiedllvm/lib/MC/MachObjectWriter.cpp
The file was modifiedllvm/include/llvm/DebugInfo/PDB/Native/SymbolCache.h
The file was modifiedllvm/unittests/ExecutionEngine/JITLink/MachO_x86_64_Tests.cpp
The file was modifiedllvm/lib/DebugInfo/MSF/MappedBlockStream.cpp
The file was modifiedllvm/lib/Transforms/Utils/Evaluator.cpp
The file was modifiedllvm/lib/ExecutionEngine/Orc/Layer.cpp
The file was modifiedllvm/lib/Target/PowerPC/MCTargetDesc/PPCELFObjectWriter.cpp
The file was modifiedllvm/examples/Kaleidoscope/BuildingAJIT/Chapter1/KaleidoscopeJIT.h
The file was modifiedllvm/tools/llvm-lto2/llvm-lto2.cpp
The file was modifiedllvm/lib/DebugInfo/DWARF/DWARFUnitIndex.cpp
The file was modifiedllvm/lib/MCA/HardwareUnits/Scheduler.cpp
The file was modifiedllvm/lib/Support/Z3Solver.cpp
The file was modifiedllvm/tools/opt/opt.cpp
The file was modifiedllvm/lib/CodeGen/MachineScheduler.cpp
The file was modifiedllvm/unittests/ADT/MakeUniqueTest.cpp
The file was modifiedllvm/lib/ProfileData/SampleProfReader.cpp
The file was modifiedllvm/lib/Target/AMDGPU/SIInsertWaitcnts.cpp
The file was modifiedllvm/lib/ExecutionEngine/Orc/IndirectionUtils.cpp
The file was modifiedllvm/include/llvm/ExecutionEngine/Orc/Legacy.h
The file was modifiedllvm/lib/Target/ARM/MCTargetDesc/ARMWinCOFFObjectWriter.cpp
The file was modifiedllvm/tools/llvm-mca/CodeRegion.cpp
The file was modifiedllvm/lib/ObjectYAML/MinidumpYAML.cpp
The file was modifiedllvm/lib/Target/RISCV/MCTargetDesc/RISCVELFObjectWriter.cpp
The file was modifiedllvm/unittests/ExecutionEngine/JITLink/JITLinkTestCommon.cpp
The file was modifiedllvm/lib/Transforms/Coroutines/CoroElide.cpp
The file was modifiedllvm/unittests/ProfileData/CoverageMappingTest.cpp
The file was modifiedllvm/docs/tutorial/BuildingAJIT2.rst
The file was modifiedllvm/examples/Kaleidoscope/BuildingAJIT/Chapter2/KaleidoscopeJIT.h
The file was modifiedllvm/unittests/Analysis/MemorySSATest.cpp
The file was modifiedllvm/lib/CodeGen/MacroFusion.cpp
The file was modifiedllvm/lib/IR/AsmWriter.cpp
The file was modifiedllvm/lib/CodeGen/AsmPrinter/AsmPrinterInlineAsm.cpp
The file was modifiedllvm/tools/llvm-rc/ResourceScriptStmt.h
The file was modifiedllvm/unittests/ExecutionEngine/Orc/CoreAPIsTest.cpp
The file was modifiedllvm/lib/Target/AMDGPU/SIMemoryLegalizer.cpp
The file was modifiedllvm/lib/Transforms/Instrumentation/HWAddressSanitizer.cpp
The file was modifiedllvm/lib/Transforms/Scalar/GVNHoist.cpp
The file was modifiedllvm/lib/Target/ARM/MCTargetDesc/ARMELFObjectWriter.cpp
The file was modifiedllvm/utils/TableGen/DAGISelEmitter.cpp
The file was modifiedllvm/include/llvm/ExecutionEngine/Orc/LambdaResolver.h
The file was modifiedllvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldCOFF.cpp
The file was modifiedllvm/lib/Transforms/Utils/SymbolRewriter.cpp
The file was modifiedllvm/docs/tutorial/MyFirstLanguageFrontend/LangImpl05.rst
The file was modifiedllvm/lib/Target/AMDGPU/SIMachineScheduler.cpp
The file was modifiedllvm/utils/TableGen/CodeGenSchedule.cpp
The file was modifiedllvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
The file was modifiedllvm/lib/DebugInfo/PDB/UDTLayout.cpp
The file was modifiedllvm/lib/Target/ARM/MCTargetDesc/ARMMachObjectWriter.cpp
The file was modifiedllvm/tools/llvm-mc-assemble-fuzzer/llvm-mc-assemble-fuzzer.cpp
The file was modifiedllvm/lib/MC/XCOFFObjectWriter.cpp
The file was modifiedllvm/tools/obj2yaml/macho2yaml.cpp
The file was modifiedllvm/lib/ExecutionEngine/JITLink/JITLinkGeneric.h
The file was modifiedllvm/lib/Transforms/Instrumentation/GCOVProfiling.cpp
The file was modifiedllvm/lib/Bitcode/Reader/MetadataLoader.cpp
The file was modifiedllvm/unittests/DebugInfo/DWARF/DwarfGenerator.cpp
The file was modifiedllvm/include/llvm/ADT/Any.h
The file was modifiedllvm/lib/DebugInfo/DWARF/DWARFUnit.cpp
The file was modifiedllvm/lib/Analysis/LazyBranchProbabilityInfo.cpp
The file was modifiedllvm/include/llvm/ProfileData/InstrProf.h
The file was modifiedllvm/unittests/ExecutionEngine/Orc/ThreadSafeModuleTest.cpp
The file was modifiedllvm/lib/Analysis/OptimizationRemarkEmitter.cpp
The file was modifiedllvm/include/llvm/IR/ModuleSummaryIndexYAML.h
The file was modifiedllvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldChecker.cpp
The file was modifiedllvm/lib/ProfileData/InstrProfReader.cpp
The file was modifiedllvm/lib/MC/ELFObjectWriter.cpp
The file was modifiedllvm/utils/TableGen/AsmMatcherEmitter.cpp
The file was modifiedllvm/lib/Target/Sparc/SparcTargetMachine.cpp
The file was modifiedllvm/lib/ExecutionEngine/PerfJITEvents/PerfJITEventListener.cpp
The file was modifiedllvm/lib/CodeGen/GlobalISel/Combiner.cpp
The file was modifiedllvm/lib/ExecutionEngine/Orc/ThreadSafeModule.cpp
The file was modifiedllvm/lib/MC/MCObjectStreamer.cpp
The file was modifiedllvm/docs/tutorial/MyFirstLanguageFrontend/LangImpl07.rst
The file was modifiedllvm/tools/llvm-exegesis/lib/Assembler.cpp
The file was modifiedllvm/lib/FuzzMutate/FuzzerCLI.cpp
The file was modifiedllvm/include/llvm/Support/Error.h
The file was modifiedllvm/lib/Target/MSP430/MCTargetDesc/MSP430ELFObjectWriter.cpp
The file was modifiedllvm/lib/Transforms/IPO/PartialInlining.cpp
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPUSubtarget.cpp
The file was modifiedllvm/lib/Target/AArch64/AArch64TargetMachine.cpp
The file was modifiedllvm/lib/DebugInfo/PDB/Native/TpiStream.cpp
The file was modifiedllvm/lib/MC/MCParser/DarwinAsmParser.cpp
The file was modifiedllvm/lib/Target/AVR/AVRTargetMachine.cpp
The file was modifiedllvm/lib/Target/X86/MCTargetDesc/X86WinCOFFObjectWriter.cpp
The file was modifiedllvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldELF.cpp
The file was modifiedllvm/docs/tutorial/MyFirstLanguageFrontend/LangImpl04.rst
The file was modifiedllvm/lib/ProfileData/GCOV.cpp
The file was modifiedllvm/unittests/Support/BinaryStreamTest.cpp
The file was modifiedllvm/tools/llvm-cov/CodeCoverage.cpp
The file was modifiedllvm/lib/ExecutionEngine/Orc/ExecutionUtils.cpp
The file was modifiedllvm/lib/Remarks/BitstreamRemarkSerializer.cpp
The file was modifiedllvm/lib/Target/X86/MCTargetDesc/X86MachObjectWriter.cpp
The file was modifiedllvm/include/llvm/LTO/Config.h
The file was modifiedllvm/lib/Analysis/LoopAccessAnalysis.cpp
The file was modifiedllvm/include/llvm/MCA/HardwareUnits/Scheduler.h
The file was modifiedllvm/lib/Bitcode/Reader/BitcodeReader.cpp
The file was modifiedllvm/include/llvm/DebugInfo/PDB/PDBSymbol.h
The file was modifiedllvm/tools/llvm-elfabi/ELFObjHandler.cpp
The file was modifiedllvm/lib/CodeGen/LazyMachineBlockFrequencyInfo.cpp
The file was modifiedllvm/lib/Transforms/Vectorize/LoopVectorize.cpp
The file was modifiedllvm/lib/Transforms/Instrumentation/PGOMemOPSizeOpt.cpp
The file was modifiedllvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
The file was modifiedllvm/lib/Target/WebAssembly/WebAssemblyMCInstLower.cpp
The file was modifiedllvm/unittests/ADT/FunctionRefTest.cpp
The file was modifiedllvm/include/llvm/CodeGen/GlobalISel/GISelKnownBits.h
The file was modifiedllvm/tools/obj2yaml/wasm2yaml.cpp
The file was modifiedllvm/tools/llvm-opt-fuzzer/llvm-opt-fuzzer.cpp
The file was modifiedllvm/tools/llvm-link/llvm-link.cpp
The file was modifiedllvm/lib/IR/Verifier.cpp
The file was modifiedllvm/lib/Support/Timer.cpp
The file was modifiedllvm/examples/HowToUseLLJIT/HowToUseLLJIT.cpp
The file was modifiedllvm/lib/MC/MCStreamer.cpp
The file was modifiedllvm/lib/CodeGen/CodeGenPrepare.cpp
The file was modifiedllvm/unittests/DebugInfo/CodeView/RandomAccessVisitorTest.cpp
The file was modifiedllvm/unittests/Transforms/Vectorize/VPlanTestBase.h
The file was modifiedllvm/lib/Target/Lanai/AsmParser/LanaiAsmParser.cpp
The file was modifiedllvm/lib/Transforms/Coroutines/CoroEarly.cpp
The file was modifiedllvm/tools/llvm-rc/llvm-rc.cpp
The file was modifiedllvm/tools/llvm-objcopy/ELF/ELFObjcopy.cpp
The file was modifiedllvm/lib/Transforms/Utils/CloneModule.cpp
The file was modifiedllvm/examples/Kaleidoscope/Chapter7/toy.cpp
The file was modifiedllvm/lib/ExecutionEngine/ExecutionEngine.cpp
The file was modifiedllvm/lib/Target/AArch64/MCTargetDesc/AArch64WinCOFFObjectWriter.cpp
The file was modifiedllvm/lib/Transforms/IPO/HotColdSplitting.cpp
The file was modifiedllvm/unittests/XRay/FDRRecordPrinterTest.cpp
The file was modifiedllvm/lib/AsmParser/LLParser.cpp
The file was modifiedllvm/unittests/ExecutionEngine/Orc/QueueChannel.h
The file was modifiedllvm/lib/DebugInfo/PDB/DIA/DIARawSymbol.cpp
The file was modifiedllvm/lib/Analysis/IndirectCallPromotionAnalysis.cpp
The file was modifiedllvm/tools/lto/lto.cpp
The file was modifiedllvm/lib/MCA/HardwareUnits/ResourceManager.cpp
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPULibFunc.cpp
The file was modifiedllvm/tools/llvm-jitlink/llvm-jitlink.cpp
The file was modifiedllvm/lib/CodeGen/RegAllocPBQP.cpp
The file was modifiedllvm/lib/Target/AArch64/MCTargetDesc/AArch64ELFObjectWriter.cpp
The file was modifiedllvm/lib/DebugInfo/PDB/PDBSymbolTypeFunctionSig.cpp
The file was modifiedllvm/tools/llvm-dis/llvm-dis.cpp
The file was modifiedllvm/utils/TableGen/FixedLenDecoderEmitter.cpp
The file was modifiedllvm/lib/Support/Unix/Path.inc
The file was modifiedllvm/lib/Transforms/IPO/Inliner.cpp
The file was modifiedllvm/tools/llvm-pdbutil/DumpOutputStyle.cpp
The file was modifiedllvm/include/llvm/ExecutionEngine/Orc/RemoteObjectLayer.h
The file was modifiedllvm/lib/Target/Hexagon/HexagonTargetMachine.cpp
The file was modifiedllvm/lib/DebugInfo/PDB/Native/PDBFileBuilder.cpp
The file was modifiedllvm/lib/Target/Hexagon/HexagonSubtarget.cpp
The file was modifiedllvm/examples/Kaleidoscope/Chapter5/toy.cpp
The file was modifiedllvm/include/llvm/ExecutionEngine/Orc/RPCUtils.h
The file was modifiedllvm/lib/CodeGen/PseudoSourceValue.cpp
The file was modifiedllvm/include/llvm/Support/GenericDomTree.h
The file was modifiedllvm/lib/Target/AMDGPU/AsmParser/AMDGPUAsmParser.cpp
The file was modifiedllvm/lib/ExecutionEngine/Orc/CompileUtils.cpp
The file was modifiedllvm/lib/Object/XCOFFObjectFile.cpp
The file was modifiedllvm/lib/DebugInfo/PDB/Native/DbiModuleDescriptorBuilder.cpp
The file was modifiedllvm/lib/Analysis/LoopCacheAnalysis.cpp
The file was modifiedllvm/tools/llc/llc.cpp
The file was modifiedllvm/docs/tutorial/MyFirstLanguageFrontend/LangImpl09.rst
The file was modifiedllvm/lib/CodeGen/MachineInstr.cpp
The file was modifiedllvm/lib/ExecutionEngine/Orc/ObjectLinkingLayer.cpp
The file was modifiedllvm/lib/CodeGen/GCMetadata.cpp
The file was modifiedllvm/include/llvm/ExecutionEngine/Orc/Core.h
The file was modifiedllvm/examples/Kaleidoscope/Chapter4/toy.cpp
The file was modifiedllvm/examples/Kaleidoscope/BuildingAJIT/Chapter3/toy.cpp
The file was modifiedllvm/unittests/CodeGen/GlobalISel/CSETest.cpp
The file was modifiedllvm/lib/DebugInfo/PDB/DIA/DIASession.cpp
The file was modifiedllvm/lib/DebugInfo/PDB/Native/NativeTypeEnum.cpp
The file was modifiedllvm/tools/llvm-rc/ResourceScriptParser.cpp
The file was modifiedllvm/lib/ExecutionEngine/JITLink/MachOAtomGraphBuilder.cpp
The file was modifiedllvm/utils/TableGen/CodeGenRegisters.cpp
The file was modifiedllvm/include/llvm/Support/Registry.h
The file was modifiedllvm/lib/CodeGen/GlobalISel/CSEInfo.cpp
The file was modifiedllvm/tools/llvm-pdbutil/InputFile.cpp
The file was modifiedllvm/utils/TableGen/X86RecognizableInstr.cpp
The file was modifiedllvm/tools/llvm-mc/llvm-mc.cpp
The file was modifiedllvm/lib/Analysis/CallGraph.cpp
The file was modifiedllvm/unittests/ADT/MapVectorTest.cpp
The file was modifiedllvm/lib/CodeGen/LLVMTargetMachine.cpp
The file was modifiedllvm/include/llvm/ExecutionEngine/Orc/LazyEmittingLayer.h
The file was modifiedllvm/lib/TableGen/SetTheory.cpp
The file was modifiedllvm/lib/Target/AVR/MCTargetDesc/AVRELFObjectWriter.cpp
The file was modifiedllvm/lib/LTO/LTO.cpp
The file was modifiedllvm/tools/llvm-pdbutil/ExplainOutputStyle.cpp
The file was modifiedllvm/lib/DebugInfo/DWARF/DWARFContext.cpp
The file was modifiedllvm/lib/Target/PowerPC/PPCTargetMachine.cpp
The file was modifiedllvm/tools/sancov/sancov.cpp
The file was modifiedllvm/lib/Target/X86/MCTargetDesc/X86ELFObjectWriter.cpp
The file was modifiedllvm/examples/Kaleidoscope/BuildingAJIT/Chapter1/toy.cpp
The file was modifiedllvm/tools/llvm-exegesis/lib/BenchmarkRunner.cpp
The file was modifiedllvm/lib/Target/Mips/MCTargetDesc/MipsELFObjectWriter.cpp
The file was modifiedllvm/unittests/ExecutionEngine/Orc/LazyCallThroughAndReexportsTest.cpp
The file was modifiedllvm/examples/Kaleidoscope/BuildingAJIT/Chapter5/toy.cpp
The file was modifiedllvm/lib/CodeGen/AsmPrinter/DwarfDebug.h
The file was modifiedllvm/lib/CodeGen/GlobalISel/Legalizer.cpp
The file was modifiedllvm/utils/TableGen/CodeGenDAGPatterns.cpp
The file was modifiedllvm/utils/TableGen/GlobalISelEmitter.cpp
The file was modifiedllvm/unittests/CodeGen/GlobalISel/GISelMITest.h
The file was modifiedllvm/lib/CodeGen/GlobalISel/RegBankSelect.cpp
The file was modifiedllvm/lib/DebugInfo/PDB/Native/NativeEnumInjectedSources.cpp
The file was modifiedllvm/tools/llvm-mca/llvm-mca.cpp
The file was modifiedllvm/tools/llvm-pdbutil/PrettyTypeDumper.cpp
The file was modifiedllvm/lib/Target/SystemZ/MCTargetDesc/SystemZMCObjectWriter.cpp
The file was modifiedllvm/unittests/CodeGen/MachineInstrTest.cpp
The file was modifiedllvm/lib/Target/WebAssembly/WebAssemblyMachineFunctionInfo.cpp
The file was modifiedllvm/lib/Target/AArch64/AArch64Subtarget.cpp
The file was modifiedllvm/include/llvm/MCA/HardwareUnits/LSUnit.h
The file was modifiedllvm/lib/DebugInfo/PDB/Native/GSIStreamBuilder.cpp
The file was modifiedllvm/examples/ExceptionDemo/ExceptionDemo.cpp
The file was modifiedllvm/lib/DebugInfo/PDB/Native/DbiStreamBuilder.cpp
The file was modifiedllvm/lib/Target/BPF/AsmParser/BPFAsmParser.cpp
The file was modifiedllvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp
The file was modifiedllvm/lib/Target/Hexagon/MCTargetDesc/HexagonELFObjectWriter.cpp
The file was modifiedllvm/include/llvm/DebugInfo/DIContext.h
The file was modifiedllvm/lib/DebugInfo/DWARF/DWARFVerifier.cpp
The file was modifiedllvm/tools/llvm-exegesis/lib/X86/Target.cpp
The file was modifiedllvm/lib/Support/FileCheck.cpp
The file was modifiedllvm/lib/Target/Mips/AsmParser/MipsAsmParser.cpp
The file was modifiedllvm/lib/Target/Sparc/MCTargetDesc/SparcELFObjectWriter.cpp
The file was modifiedllvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.h
The file was modifiedllvm/lib/CodeGen/GlobalISel/RegisterBankInfo.cpp
The file was modifiedllvm/lib/CodeGen/LiveDebugVariables.cpp
The file was modifiedllvm/lib/DebugInfo/DWARF/DWARFDebugFrame.cpp
The file was modifiedllvm/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp
The file was modifiedllvm/utils/TableGen/SearchableTableEmitter.cpp
The file was modifiedllvm/lib/Remarks/RemarkParser.cpp
The file was modifiedllvm/include/llvm/CodeGen/MachinePipeliner.h
The file was modifiedllvm/lib/Target/AArch64/MCTargetDesc/AArch64MachObjectWriter.cpp
The file was modifiedllvm/lib/Support/SpecialCaseList.cpp
The file was modifiedllvm/unittests/IR/MetadataTest.cpp
The file was modifiedllvm/lib/Target/BPF/BPFTargetMachine.cpp
The file was modifiedllvm/lib/CodeGen/AsmPrinter/DwarfCompileUnit.cpp
The file was modifiedllvm/lib/CodeGen/IfConversion.cpp
The file was modifiedllvm/lib/CodeGen/MachineBlockPlacement.cpp
The file was modifiedllvm/lib/Target/BPF/MCTargetDesc/BPFELFObjectWriter.cpp
The file was modifiedllvm/lib/ExecutionEngine/Orc/OrcCBindingsStack.h
The file was modifiedllvm/lib/Object/WasmObjectFile.cpp
The file was modifiedllvm/examples/Kaleidoscope/Chapter3/toy.cpp
The file was modifiedllvm/include/llvm/DebugInfo/CodeView/SymbolDeserializer.h
The file was modifiedllvm/lib/Transforms/Utils/PredicateInfo.cpp
The file was modifiedllvm/lib/Support/CodeGenCoverage.cpp
The file was modifiedllvm/tools/llvm-exegesis/lib/Analysis.cpp
The file was modifiedllvm/examples/HowToUseJIT/HowToUseJIT.cpp
The file was modifiedllvm/lib/Target/ARM/ARMParallelDSP.cpp
The file was modifiedllvm/lib/TableGen/TGLexer.cpp
The file was modifiedllvm/lib/Target/Sparc/AsmParser/SparcAsmParser.cpp
The file was modifiedllvm/include/llvm/DebugInfo/CodeView/TypeDeserializer.h
The file was modifiedllvm/lib/Support/Error.cpp
The file was modifiedllvm/lib/Transforms/Instrumentation/CFGMST.h
The file was modifiedllvm/lib/Target/MSP430/MSP430TargetMachine.cpp
The file was modifiedllvm/tools/llvm-exegesis/lib/BenchmarkRunner.h
The file was modifiedllvm/lib/DebugInfo/PDB/DIA/DIASectionContrib.cpp
The file was modifiedllvm/examples/Kaleidoscope/Chapter8/toy.cpp
The file was modifiedllvm/tools/dsymutil/DwarfStreamer.cpp
The file was modifiedllvm/include/llvm/IR/PassManagerInternal.h
The file was modifiedllvm/examples/Kaleidoscope/BuildingAJIT/Chapter4/KaleidoscopeJIT.h
The file was modifiedllvm/lib/Target/XCore/XCoreTargetMachine.cpp
The file was modifiedllvm/lib/Transforms/Scalar/NewGVN.cpp
The file was modifiedllvm/docs/tutorial/MyFirstLanguageFrontend/LangImpl06.rst
The file was modifiedllvm/lib/Transforms/Coroutines/CoroCleanup.cpp
The file was modifiedllvm/unittests/ExecutionEngine/Orc/LegacyCompileOnDemandLayerTest.cpp
The file was modifiedllvm/examples/Kaleidoscope/Chapter2/toy.cpp
The file was modifiedllvm/lib/Transforms/IPO/WholeProgramDevirt.cpp
The file was modifiedllvm/lib/Transforms/Utils/ImportedFunctionsInliningStatistics.cpp
The file was modifiedllvm/lib/ProfileData/Coverage/CoverageMappingReader.cpp
The file was modifiedllvm/lib/Analysis/ModuleSummaryAnalysis.cpp
The file was modifiedllvm/lib/MC/WinCOFFObjectWriter.cpp
The file was modifiedllvm/unittests/Support/YAMLIOTest.cpp
The file was modifiedllvm/examples/Kaleidoscope/BuildingAJIT/Chapter3/KaleidoscopeJIT.h
The file was modifiedllvm/tools/llvm-objcopy/ELF/Object.cpp
The file was modifiedllvm/tools/llvm-isel-fuzzer/llvm-isel-fuzzer.cpp
The file was modifiedllvm/lib/Transforms/IPO/SampleProfile.cpp
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
The file was modifiedllvm/lib/Transforms/IPO/ThinLTOBitcodeWriter.cpp
The file was modifiedllvm/tools/obj2yaml/elf2yaml.cpp
The file was modifiedllvm/examples/Kaleidoscope/BuildingAJIT/Chapter2/toy.cpp
The file was modifiedllvm/lib/CodeGen/MachineFunction.cpp
The file was modifiedllvm/lib/LTO/LTOBackend.cpp
The file was modifiedllvm/lib/DebugInfo/PDB/Native/PDBFile.cpp
The file was modifiedllvm/lib/Object/MachOObjectFile.cpp
The file was modifiedllvm/lib/IR/Function.cpp
The file was modifiedllvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldMachO.cpp
The file was modifiedllvm/lib/Object/ELFObjectFile.cpp
The file was modifiedllvm/include/llvm/ExecutionEngine/Orc/OrcRemoteTargetClient.h
The file was modifiedllvm/lib/CodeGen/InlineSpiller.cpp
The file was modifiedllvm/lib/Support/YAMLTraits.cpp
The file was modifiedllvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
The file was modifiedllvm/tools/llvm-profdata/llvm-profdata.cpp
The file was modifiedllvm/lib/Target/AVR/AsmParser/AVRAsmParser.cpp
The file was modifiedllvm/lib/Transforms/Scalar/LICM.cpp
The file was modifiedllvm/lib/Target/AMDGPU/SIMachineFunctionInfo.h
The file was modifiedllvm/tools/llvm-exegesis/lib/Target.cpp
The file was modifiedllvm/lib/Support/FileOutputBuffer.cpp
Commit 8460301d58eebf7f9a8faa7dd13460f4eb85a9b6 by kparzysz
[Hexagon] Generate vector min/max for HVX
llvm-svn: 369014
The file was modifiedllvm/test/CodeGen/Hexagon/autohvx/vector-compare-64b.ll
The file was modifiedllvm/lib/Target/Hexagon/HexagonISelLowering.h
The file was addedllvm/test/CodeGen/Hexagon/autohvx/minmax-128b.ll
The file was modifiedllvm/lib/Target/Hexagon/HexagonISelLoweringHVX.cpp
The file was modifiedllvm/test/CodeGen/Hexagon/autohvx/vector-compare-128b.ll
The file was modifiedllvm/lib/Target/Hexagon/HexagonPatternsHVX.td
The file was addedllvm/test/CodeGen/Hexagon/autohvx/minmax-64b.ll
The file was modifiedllvm/lib/Target/Hexagon/HexagonISelLowering.cpp
Commit b2df99cd95013592900d330e90fa91bd99e372e3 by a.bataev
[BUNDLER]Improve the test, NFC.
Summary: Make the test more portable and do not rely on the pre-bundled
object file.
Reviewers: Hahnfeld, hfinkel, jdoerfert
Subscribers: caomhin, kkwli0, cfe-commits
Tags: #clang
Differential Revision: https://reviews.llvm.org/D66296
llvm-svn: 369015
The file was modifiedclang/test/Driver/clang-offload-bundler.c
The file was removedclang/test/Driver/clang-offload-bundler.c.o
Commit 1c013ca1f28b5cb1c969ccec0b28b1da40a4a0ae by llvm-dev
[LLVM][Alignment] Fix MSVC potential division by 0 warning (PR42911)
Original Patch by @gchatelet (Guillaume Chatelet)
Differential Revision: https://reviews.llvm.org/D65859
llvm-svn: 369016
The file was modifiedllvm/unittests/Support/AlignmentTest.cpp
Commit 8d3a1523dd96968c75987620374bfc78c45ee279 by benny.kra
[Support] Base RWMutex on std::shared_timed_mutex (C++14)
This should have the same semantics. We use std::shared_mutex instead on
MSVC and C++17, std::shared_timed_mutex is less efficient than our
custom implementation on Windows, std::shared_mutex should be faster.
llvm-svn: 369018
The file was removedllvm/lib/Support/Windows/RWMutex.inc
The file was removedllvm/lib/Support/RWMutex.cpp
The file was removedllvm/lib/Support/Unix/RWMutex.inc
The file was modifiedllvm/include/llvm/Support/RWMutex.h
The file was modifiedllvm/lib/Support/CMakeLists.txt
Commit 4fb80d56db626762dc37e4516d1a269ea974229a by a.bataev
[Driver][Bundler] Improve bundling of object files.
Summary: Previously, object files were bundled using partial linking. It
resulted in the following structure of the bundled objects:
```
<host_code> clang-offload-bundle
__CLANG_OFFLOAD_BUNDLE__<target>
<target_code>
``` But when we tried to unbundle object files, it worked correctly only
for the target objects. The host object remains bundled. It produced a
lot of junk sections in the host object files and in some cases may
caused incorrect linking.
Patch improves bundling of the object files. After this patch the
bundled object looks like this:
```
<host_code> clang-offload-bundle
__CLANG_OFFLOAD_BUNDLE__<target>
<target_code>
__CLANG_OFFLOAD_BUNDLE__<host>
<host_code>
```
With this structure we are able to unbundle the host object files too so
that after unbundling they are the same as were before. The host section
is bundled twice. The bundled section is used to unbundle the original
host section.
Reviewers: yaxunl, tra, jlebar, hfinkel, jdoerfert
Subscribers: caomhin, kkwli0, cfe-commits
Tags: #clang
Differential Revision: https://reviews.llvm.org/D65819
llvm-svn: 369019
The file was modifiedclang/test/Driver/clang-offload-bundler.c
The file was modifiedclang/tools/clang-offload-bundler/ClangOffloadBundler.cpp
Commit e7fdf7cb71c8835df5de291b3556bc4140cbee5c by George Karpenkov
Test commit #2.
llvm-svn: 369020
The file was modifiedclang/www/index.html
Commit bb99437f6d45af7bbc88e07b8e4dbc1528802508 by jlettner
[sanitizer_common] Always use posix_spawn on Darwin
On Darwin we have two external symbolizers: atos and llvm-symbolizer.
atos was changed to use posix_spawn (instead of fork+execv) in a
previous commit [1]. Let's use posix_spawn for llvm-symbolizer as well.
Our hope is that eventually we can transition to posix_spawn on other
platforms too.
[1] 399408a92f1dbbefeb708f718b0d8eb62dfa9f09
llvm-svn: 369021
The file was modifiedcompiler-rt/lib/sanitizer_common/sanitizer_symbolizer_libcdep.cpp
Commit 6eebd2bcd7bf50a0362927adf7222f6076746307 by craig.topper
[X86] Improve cost model for subvector extraction of less than 128-bit
vectors
Now that we're using widening legalization. We need to improve our
extract_subvector cost model for these types. This patch begins by
modeling these as a subvector extract followed by a permute. I've left
FIXMEs in the code for future improvements.
Differential Revision: https://reviews.llvm.org/D65892
llvm-svn: 369022
The file was modifiedllvm/test/Analysis/CostModel/X86/shuffle-extract_subvector.ll
The file was modifiedllvm/lib/Target/X86/X86TargetTransformInfo.cpp
Commit 7a210d65edc6d7fa4f8e828a9fc967e73f26b24d by JF Bastien
Fix lld on GCC 5.1 after the C++14 move
Summary: libstdc++ in GCC 5.1 has some bugs. The move to C++14 in D66195
triggered one such bug caused by the new constexpr support in C++14, and
the implementation doing SFINAE wrong with the comparator to
std::stable_sort.
Here's a small repro: https://godbolt.org/z/2QC3-n
The fix is to inline the lambdas directly into the llvm::stable_sort
call instead of erasing them through a std::function. The code is more
readable as well.
Reviewers: thakis, ruiu, espindola
Subscribers: emaste, arichardson, MaskRay, jkorous, dexonsmith,
llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D66306
llvm-svn: 369023
The file was modifiedlld/ELF/LinkerScript.cpp
Commit 213d8a9f1389eb565146e6323317ef436cb0da78 by twoh
[NewPM][PassInstrumentation] IR printing support for (Thin)LTO
Summary: IR printing has not been correctly supported with (Thin)LTO if
the new pass manager is enabled. Previously we only get outputs from
backend(codegen) passes, as they are still under legacy pass manager
even when the new pass manager is enabled. This patch addresses the
issue and enables IR printing for optimization passes with new pass
manager + (Thin)LTO setting.
Reviewers: fedor.sergeev, philip.pfaffe
Subscribers: mehdi_amini, inglorion, hiraditya, steven_wu, dexonsmith,
dang, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D66253
llvm-svn: 369024
The file was modifiedllvm/lib/LTO/LTOBackend.cpp
The file was addedllvm/test/ThinLTO/X86/printer.ll
Commit 626ed22fbe2cfc2043cef2d855743f029c67f73a by mark.lacey
[CallGraph] Refine call graph for indirect calls with !callees metadata
For indirect call sites having a small set of possible callees,
!callees metadata can be used to indicate what those callees are. This
patch updates the call graph and lazy call graph analyses so that they
consider this metadata when encountering call sites. For the call graph,
it adds a new external call graph node to the graph for each unique
!callees metadata node. A call graph edge connects an indirect call site
with the external node associated with the
!callees metadata that is attached to it. And there is an edge from this
external node to each of the callees indicated by the metadata.
Similarly, for the lazy call graph, the patch adds Ref edges from a
caller to the possible callees indicated by the metadata.
The primary purpose of the patch is to facilitate iterating over the
functions in a module such that all of the callees indicated by a given
!callees metadata node will be visited prior to the functions containing
call sites annotated by that node. This property is required by
optimizations performing a bottom-up traversal of the SCC DAG. For
example, the inliner can be made to inline through an indirect call. If
the call site is annotated with !callees metadata, this patch ensures
that the inliner will have visited all of the callees prior to the
caller, allowing it to reliably compute the cost of inlining one or more
of the potential callees.
Original patch by @mssimpso. I've made some small changes to get it to
apply, build, and pass tests on the top of tree, as well as some minor
tweaks to formatting and functionality.
Subscribers: mehdi_amini, hiraditya, llvm-commits, mssimpso
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D39339
llvm-svn: 369025
The file was modifiedllvm/include/llvm/IR/CallSite.h
The file was modifiedllvm/lib/Analysis/CGSCCPassManager.cpp
The file was modifiedllvm/test/Analysis/CallGraph/non-leaf-intrinsics.ll
The file was modifiedllvm/include/llvm/Analysis/CallGraph.h
The file was addedllvm/test/Analysis/CallGraph/callees-metadata.ll
The file was modifiedllvm/lib/Analysis/LazyCallGraph.cpp
The file was modifiedllvm/lib/Analysis/CallGraph.cpp
The file was addedllvm/test/Analysis/LazyCallGraph/callees-metadata.ll
Commit c476124bc8986f4e70a99f798ff3cfa44937a150 by jeremy.morse.llvm
[DebugInfo] Avoid crash from dropped fragments in LiveDebugValues
This patch avoids a crash caused by DW_OP_LLVM_fragments being dropped
from DIExpressions by LiveDebugValues spill-restore code. The appearance
of a previously unseen fragment configuration confuses LDV, as
documented in PR42773, and reproduced by the test function this patch
adds (Crashes on a x86_64 debug build).
To avoid this, on spill restore, we now use fragment information from
the spilt-location-expression.
In addition, when spilling, we now don't spill any DBG_VALUE with a
complex expression, as it can't be safely restored and will definitely
lead to an incorrect variable location. The discussion of this is in
D65368.
Differential Revision: https://reviews.llvm.org/D66284
llvm-svn: 369026
The file was modifiedllvm/lib/CodeGen/LiveDebugValues.cpp
The file was modifiedllvm/test/DebugInfo/MIR/X86/live-debug-values-restore.mir
Commit 11d9e46f8e043a96959164ecc69d296373495c63 by pavel
Revert "MemoryBuffer: Add a missing error-check to getOpenFileImpl"
This reverts commit r368977 because it broke a couple of tests in lldb.
llvm-svn: 369027
The file was modifiedllvm/lib/Support/MemoryBuffer.cpp
The file was modifiedllvm/unittests/Support/MemoryBufferTest.cpp
Commit 1c3a5d78bd9671453d6638b38239b4e98cb7d00b by a.bataev
Fix the test, NFC.
llvm-svn: 369028
The file was modifiedclang/test/Driver/clang-offload-bundler.c
Commit 2e62396c2f3fb3acc21f9701d9683fbd314a0767 by benny.kra
Link libpthread into LLVMCore.so
After r369018 the compiler can inline pthread calls into users of
RWMutex.
llvm-svn: 369029
The file was modifiedllvm/lib/IR/CMakeLists.txt
Commit 0890f0f3de76c204d54ffc24baa6465dcce30d9d by sivachandra
Add LLVMLibC proposal to docs/index.rst.
Reviewers: rupprecht
Subscribers: arphaman, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D66307
llvm-svn: 369030
The file was modifiedllvm/docs/index.rst
Commit 2a372ba53403cae8a387a7b5e58640779ab2f742 by craig.topper
[X86] Add custom type legalization for bitcasting mmx to
v2i32/v4i16/v8i8 to use movq2dq instead of going through memory.
llvm-svn: 369031
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.h
The file was modifiedllvm/test/CodeGen/X86/3dnow-intrinsics.ll
The file was modifiedllvm/lib/Target/X86/X86InstrMMX.td
The file was modifiedllvm/test/CodeGen/X86/vec_extract-mmx.ll
The file was modifiedllvm/test/CodeGen/X86/mmx-arg-passing-x86-64.ll
The file was modifiedllvm/test/CodeGen/X86/mmx-arith.ll
The file was modifiedllvm/test/CodeGen/X86/vec_insert-7.ll
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.cpp
The file was modifiedllvm/test/CodeGen/X86/mmx-cvt.ll
Commit 00782a4b68c71b9fb80b403b13f9ec67f07a87a4 by david.bolvansky
[NFC] Added tests for 'select with ctlz to cttz' fold
llvm-svn: 369032
The file was addedllvm/test/Transforms/InstCombine/select-ctlz-to-cttz.ll
Commit 2ed4573e8f8619dc67647256ac070bf91f461392 by aaron
Allow standards-based attributes to have leading and trailing
underscores.
This gives library implementers a way to use standards-based attributes
that do not conflict with user-defined macros of the same name.
Attributes in C2x require this behavior normatively (C2x 6.7.11p4), but
there's no reason to not have the same behavior in C++, especially given
that such attributes may be used by a C library consumed by a C++
compilation.
llvm-svn: 369033
The file was modifiedclang/test/Preprocessor/has_c_attribute.c
The file was modifiedclang/test/SemaCXX/attr-cxx0x.cpp
The file was modifiedclang/test/Preprocessor/has_attribute.cpp
The file was modifiedclang/lib/Sema/ParsedAttr.cpp
The file was modifiedclang/test/Sema/attr-cx2.c
Commit 69ec60d821befdcdd2df3a1a32a9327cde3ebaf6 by Adrian Prantl
Change test to use uint64_t to support compiling for 32-bit
architectures.
llvm-svn: 369034
The file was modifiedlldb/packages/Python/lldbsuite/test/lang/c/bitfields/main.c
Commit ce1750d9642551bfe288980eaa135c19826bd05b by aaron
Rename this file from cx2.c to c2x.c; NFC.
llvm-svn: 369035
The file was addedclang/test/Sema/attr-c2x.c
The file was removedclang/test/Sema/attr-cx2.c
Commit 3f2850bc606c847075673554fe49d4a35f525b61 by flo
[ValueTracking] Look through ptrmask intrinsics during
getUnderlyingObject.
Reviewers: nlopes, efriedma, hfinkel, sanjoy, aqjune, jdoerfert
Reviewed By: jdoerfert
Subscribers: jdoerfert, hiraditya, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D61669
llvm-svn: 369036
The file was modifiedllvm/lib/Analysis/BasicAliasAnalysis.cpp
The file was addedllvm/test/Analysis/BasicAA/ptrmask.ll
The file was modifiedllvm/lib/Analysis/ValueTracking.cpp
Commit d202899431e49484d907608dbe74fa6d708bb07b by listmail
[NFC] Add a couple of dump routines for RegisterPressure helper classes
llvm-svn: 369037
The file was modifiedllvm/lib/CodeGen/RegisterPressure.cpp
The file was modifiedllvm/include/llvm/CodeGen/RegisterPressure.h
Commit 1f2b727298de19a4e6de3fe28886628cec996b9b by Matthew.Arsenault
MVT: Add v3i16/v3f16 vectors
AMDGPU has some buffer intrinsics which theoretically could use this.
Some of the generated tables include the 3 and 4 element vector versions
of these rounded to 64-bits, which is ambiguous. Add these to help the
table disambiguate these.
Assertion change is for the path odd sized vectors now take for R600.
v3i16 is widened to v4i16, which then needs to be promoted to v4i32.
llvm-svn: 369038
The file was modifiedllvm/lib/CodeGen/ValueTypes.cpp
The file was modifiedllvm/lib/Target/AMDGPU/SIISelLowering.cpp
The file was modifiedllvm/test/CodeGen/X86/widen_load-2.ll
The file was modifiedllvm/include/llvm/CodeGen/ValueTypes.td
The file was modifiedllvm/test/CodeGen/X86/vec_cast.ll
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPUISelLowering.cpp
The file was modifiedllvm/lib/CodeGen/TargetLoweringBase.cpp
The file was modifiedllvm/test/CodeGen/X86/promote-vec3.ll
The file was modifiedllvm/test/TableGen/intrinsic-varargs.td
The file was modifiedllvm/include/llvm/Support/MachineValueType.h
The file was modifiedllvm/utils/TableGen/CodeGenTarget.cpp
The file was modifiedllvm/utils/TableGen/IntrinsicEmitter.cpp
Commit ef4ad1a8b63801253279f37fdf75716206f29f17 by diegof30
Revert [Bugpoint redesign] Added Pass to Remove Global Variables
This reverts r368918 because it was unstable!
It broke these builds:
* http://lab.llvm.org:8011/builders/lld-x86_64-ubuntu-fast/builds/4649
* http://lab.llvm.org:8011/builders/clang-ppc64be-linux-lnt/builds/29966
* http://lab.llvm.org:8011/builders/clang-ppc64be-linux-lnt/builds/29964
But surprisingly this passed:
* http://lab.llvm.org:8011/builders/clang-ppc64be-linux-lnt/builds/29965
llvm-svn: 369039
The file was modifiedllvm/test/Reduce/remove-funcs.ll
The file was modifiedllvm/tools/llvm-reduce/DeltaManager.h
The file was removedllvm/tools/llvm-reduce/deltas/ReduceGlobalVars.cpp
The file was removedllvm/test/Reduce/remove-global-vars.ll
The file was modifiedllvm/tools/llvm-reduce/CMakeLists.txt
The file was removedllvm/test/Reduce/Inputs/remove-global-vars.py
The file was removedllvm/tools/llvm-reduce/deltas/ReduceGlobalVars.h
Commit 8e987702b1e62f568dfe556ea240d4d6edeb5ad1 by kparzysz
[Hexagon] Fix instruction selection for vselect v4i8
llvm-svn: 369040
The file was modifiedllvm/lib/Target/Hexagon/HexagonPatterns.td
The file was addedllvm/test/CodeGen/Hexagon/isel-vselect-v4i8.ll
The file was modifiedllvm/lib/Target/Hexagon/HexagonISelLowering.cpp
Commit 0c476111317cb7aaa9a3e9f75e1c35f83122ee26 by daniel_l_sanders
Apply llvm-prefer-register-over-unsigned from clang-tidy to LLVM
Summary: This clang-tidy check is looking for unsigned integer variables
whose initializer starts with an implicit cast from llvm::Register and
changes the type of the variable to llvm::Register (dropping the llvm::
where possible).
Partial reverts in: X86FrameLowering.cpp - Some functions return
unsigned and arguably should be MCRegister X86FixupLEAs.cpp - Some
functions return unsigned and arguably should be MCRegister
X86FrameLowering.cpp - Some functions return unsigned and arguably
should be MCRegister HexagonBitSimplify.cpp - Function takes
BitTracker::RegisterRef which appears to be unsigned&
MachineVerifier.cpp - Ambiguous operator==() given MCRegister and const
Register PPCFastISel.cpp - No Register::operator-=()
PeepholeOptimizer.cpp - TargetInstrInfo::optimizeLoadInstr() takes an
unsigned& MachineTraceMetrics.cpp - MachineTraceMetrics lacks a suitable
constructor
Manual fixups in: ARMFastISel.cpp - ARMEmitLoad() now takes a Register&
instead of unsigned& HexagonSplitDouble.cpp - Ternary operator was
ambiguous between unsigned/Register HexagonConstExtenders.cpp - Has a
local class named Register, used llvm::Register instead of Register.
PPCFastISel.cpp - PPCEmitLoad() now takes a Register& instead of
unsigned&
Depends on D65919
Reviewers: arsenm, bogner, craig.topper, RKSimon
Reviewed By: arsenm
Subscribers: RKSimon, craig.topper, lenary, aemerson, wuzish,
jholewinski, MatzeB, qcolombet, dschuff, jyknight, dylanmckay, sdardis,
nemanjai, jvesely, wdng, nhaehnle, sbc100, jgravelle-google,
kristof.beyls, hiraditya, aheejin, kbarton, fedor.sergeev, javed.absar,
asb, rbar, johnrusso, simoncook, apazos, sabuasal, niosHD, jrtc27,
MaskRay, zzheng, edward-jones, atanasyan, rogfer01, MartinMosbeck,
brucehoult, the_o, tpr, PkmX, jocewei, jsji, Petar.Avramovic, asbirlea,
Jim, s.egerton, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D65962
llvm-svn: 369041
The file was modifiedllvm/lib/CodeGen/GlobalISel/CombinerHelper.cpp
The file was modifiedllvm/lib/CodeGen/MachineBasicBlock.cpp
The file was modifiedllvm/lib/Target/X86/X86FlagsCopyLowering.cpp
The file was modifiedllvm/lib/Target/Hexagon/HexagonOptAddrMode.cpp
The file was modifiedllvm/lib/Target/Sparc/DelaySlotFiller.cpp
The file was modifiedllvm/lib/CodeGen/LiveRegUnits.cpp
The file was modifiedllvm/lib/Target/Hexagon/HexagonCopyToCombine.cpp
The file was modifiedllvm/lib/CodeGen/GlobalISel/InstructionSelect.cpp
The file was modifiedllvm/lib/Target/Mips/MipsOptimizePICCall.cpp
The file was modifiedllvm/lib/CodeGen/ExpandPostRAPseudos.cpp
The file was modifiedllvm/lib/Target/XCore/XCoreISelLowering.cpp
The file was modifiedllvm/lib/Target/BPF/BPFMIPeephole.cpp
The file was modifiedllvm/lib/Target/ARM/ARMFrameLowering.cpp
The file was modifiedllvm/lib/Target/Sparc/SparcISelLowering.cpp
The file was modifiedllvm/lib/Target/AMDGPU/SIFrameLowering.cpp
The file was modifiedllvm/lib/Target/AMDGPU/SIPeepholeSDWA.cpp
The file was modifiedllvm/lib/CodeGen/LiveVariables.cpp
The file was modifiedllvm/lib/CodeGen/MachineScheduler.cpp
The file was modifiedllvm/lib/Target/PowerPC/PPCBranchSelector.cpp
The file was modifiedllvm/lib/Target/X86/X86MCInstLower.cpp
The file was modifiedllvm/lib/Target/X86/X86AvoidStoreForwardingBlocks.cpp
The file was modifiedllvm/lib/Target/AMDGPU/GCNRegBankReassign.cpp
The file was modifiedllvm/lib/CodeGen/LiveRangeShrink.cpp
The file was modifiedllvm/lib/Target/BPF/BPFISelLowering.cpp
The file was modifiedllvm/lib/Target/Sparc/SparcInstrInfo.cpp
The file was modifiedllvm/lib/Target/AMDGPU/R600InstrInfo.cpp
The file was modifiedllvm/lib/Target/ARM/Thumb2InstrInfo.cpp
The file was modifiedllvm/lib/Target/ARM/Thumb2SizeReduction.cpp
The file was modifiedllvm/lib/Target/Hexagon/HexagonVLIWPacketizer.cpp
The file was modifiedllvm/lib/Target/PowerPC/PPCQPXLoadSplat.cpp
The file was modifiedllvm/lib/Target/PowerPC/PPCVSXCopy.cpp
The file was modifiedllvm/lib/Target/AMDGPU/R600ControlFlowFinalizer.cpp
The file was modifiedllvm/lib/Target/ARM/ARMFastISel.cpp
The file was modifiedllvm/lib/Target/X86/X86InstrInfo.cpp
The file was modifiedllvm/lib/Target/Hexagon/HexagonBitSimplify.cpp
The file was modifiedllvm/lib/Target/Mips/MipsISelLowering.cpp
The file was modifiedllvm/lib/Target/ARM/ThumbRegisterInfo.cpp
The file was modifiedllvm/lib/Target/Lanai/LanaiFrameLowering.cpp
The file was modifiedllvm/lib/Target/AMDGPU/GCNRegPressure.cpp
The file was modifiedllvm/lib/Target/AMDGPU/SIPreAllocateWWMRegs.cpp
The file was modifiedllvm/lib/Target/ARM/ARMCallLowering.cpp
The file was modifiedllvm/lib/Target/AMDGPU/SIFormMemoryClauses.cpp
The file was modifiedllvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
The file was modifiedllvm/lib/Target/Hexagon/HexagonNewValueJump.cpp
The file was modifiedllvm/lib/Target/AMDGPU/R600OptimizeVectorRegisters.cpp
The file was modifiedllvm/lib/CodeGen/InlineSpiller.cpp
The file was modifiedllvm/lib/Target/Mips/Mips16ISelLowering.cpp
The file was modifiedllvm/lib/Target/MSP430/MSP430RegisterInfo.cpp
The file was modifiedllvm/lib/CodeGen/LiveIntervals.cpp
The file was modifiedllvm/lib/Target/Hexagon/HexagonStoreWidening.cpp
The file was modifiedllvm/lib/CodeGen/ProcessImplicitDefs.cpp
The file was modifiedllvm/lib/CodeGen/MachineInstrBundle.cpp
The file was modifiedllvm/lib/CodeGen/RegisterPressure.cpp
The file was modifiedllvm/lib/Target/Hexagon/HexagonSplitConst32AndConst64.cpp
The file was modifiedllvm/lib/Target/Hexagon/HexagonSubtarget.cpp
The file was modifiedllvm/lib/CodeGen/CalcSpillWeights.cpp
The file was modifiedllvm/lib/CodeGen/GlobalISel/Localizer.cpp
The file was modifiedllvm/lib/Target/ARM/ARMConstantIslandPass.cpp
The file was modifiedllvm/lib/Target/BPF/BPFInstrInfo.cpp
The file was modifiedllvm/lib/CodeGen/MachineVerifier.cpp
The file was modifiedllvm/lib/Target/AMDGPU/SIAddIMGInit.cpp
The file was modifiedllvm/lib/Target/PowerPC/PPCISelDAGToDAG.cpp
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.cpp
The file was modifiedllvm/lib/Target/Mips/MipsExpandPseudo.cpp
The file was modifiedllvm/lib/CodeGen/MachineOperand.cpp
The file was modifiedllvm/lib/Target/ARC/ARCRegisterInfo.cpp
The file was modifiedllvm/lib/CodeGen/MachineTraceMetrics.cpp
The file was modifiedllvm/lib/Target/SystemZ/SystemZRegisterInfo.cpp
The file was modifiedllvm/lib/Target/Lanai/LanaiRegisterInfo.cpp
The file was modifiedllvm/lib/Target/Hexagon/HexagonGenMux.cpp
The file was modifiedllvm/lib/CodeGen/RegAllocFast.cpp
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPURegisterBankInfo.cpp
The file was modifiedllvm/lib/Target/AMDGPU/R600Packetizer.cpp
The file was modifiedllvm/lib/Target/X86/X86InstructionSelector.cpp
The file was modifiedllvm/lib/Target/AVR/AVRAsmPrinter.cpp
The file was modifiedllvm/lib/Target/X86/X86OptimizeLEAs.cpp
The file was modifiedllvm/lib/CodeGen/MachineSSAUpdater.cpp
The file was modifiedllvm/lib/CodeGen/GlobalISel/Utils.cpp
The file was modifiedllvm/lib/Target/Hexagon/HexagonEarlyIfConv.cpp
The file was modifiedllvm/lib/Target/Hexagon/HexagonVExtract.cpp
The file was modifiedllvm/lib/CodeGen/RegAllocGreedy.cpp
The file was modifiedllvm/lib/CodeGen/SplitKit.cpp
The file was modifiedllvm/lib/Target/Hexagon/RDFLiveness.cpp
The file was modifiedllvm/lib/CodeGen/UnreachableBlockElim.cpp
The file was modifiedllvm/lib/Target/SystemZ/SystemZElimCompare.cpp
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPUAsmPrinter.cpp
The file was modifiedllvm/lib/Target/AMDGPU/SIOptimizeExecMaskingPreRA.cpp
The file was modifiedllvm/lib/Target/Hexagon/HexagonConstExtenders.cpp
The file was modifiedllvm/lib/Target/Hexagon/HexagonInstrInfo.cpp
The file was modifiedllvm/lib/Target/SystemZ/SystemZExpandPseudo.cpp
The file was modifiedllvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
The file was modifiedllvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp
The file was modifiedllvm/lib/Target/SystemZ/SystemZInstrInfo.cpp