AbortedChanges

Summary

  1. [lldb] Set timeout to 90 and 60 min for build and testing respectively.
  2. [lldb] Add DWARF variants to the matrix bot
  3. [lldb] Remove old pipeline scripts
  4. [lldb] Checking LLDB pipelines
  5. Add sanitizer-aarch64-linux-mte builder. Reviewers: vitalybuka Subscribers: javed.absar, kristof.beyls Differential Revision: https://reviews.llvm.org/D66375
  6. Add "sanitizer-aarch64-linux-mte" build script. Due to the lack of mte tests, run llvm/clang/asan tests for now.
Revision 369302 by Jonas Devlieghere:
[lldb] Set timeout to 90 and 60 min for build and testing respectively.
Change TypePath in RepositoryPath in Workspace
The file was modified/zorg/trunk/zorg/jenkins/jobs/jobs/lldb-cmakezorg/jenkins/jobs/jobs/lldb-cmake
The file was modified/zorg/trunk/zorg/jenkins/jobs/jobs/lldb-cmake-matrixzorg/jenkins/jobs/jobs/lldb-cmake-matrix
Revision 369278 by Jonas Devlieghere:
[lldb] Add DWARF variants to the matrix bot
Change TypePath in RepositoryPath in Workspace
The file was modified/zorg/trunk/zorg/jenkins/jobs/jobs/lldb-cmake-matrixzorg/jenkins/jobs/jobs/lldb-cmake-matrix
Revision 369274 by Jonas Devlieghere:
[lldb] Remove old pipeline scripts
Change TypePath in RepositoryPath in Workspace
The file was removed/zorg/trunk/zorg/jenkins/lldb-cmake-matrix-dwarf.shzorg/jenkins/lldb-cmake-matrix-dwarf.sh
The file was removed/zorg/trunk/zorg/jenkins/lldb-cmake-matrix-stage1.shzorg/jenkins/lldb-cmake-matrix-stage1.sh
The file was removed/zorg/trunk/zorg/jenkins/lldb-cmake-matrix-stage2.shzorg/jenkins/lldb-cmake-matrix-stage2.sh
Revision 369273 by Jonas Devlieghere:
[lldb] Checking LLDB pipelines
Change TypePath in RepositoryPath in Workspace
The file was added/zorg/trunk/zorg/jenkins/jobs/jobs/lldb-cmakezorg/jenkins/jobs/jobs/lldb-cmake
The file was modified/zorg/trunk/zorg/jenkins/jobs/jobs/lldb-cmake-matrixzorg/jenkins/jobs/jobs/lldb-cmake-matrix
The file was added/zorg/trunk/zorg/jenkins/jobs/jobs/lldb-cmake-sanitizedzorg/jenkins/jobs/jobs/lldb-cmake-sanitized
The file was modified/zorg/trunk/zorg/jenkins/jobs/jobs/lldb-cmake-standalonezorg/jenkins/jobs/jobs/lldb-cmake-standalone
Revision 369178 by eugenis:
Add sanitizer-aarch64-linux-mte builder.

Reviewers: vitalybuka

Subscribers: javed.absar, kristof.beyls

Differential Revision: https://reviews.llvm.org/D66375
Change TypePath in RepositoryPath in Workspace
The file was modified/zorg/trunk/buildbot/osuosl/master/config/builders.pybuildbot/osuosl/master/config/builders.py
The file was modified/zorg/trunk/buildbot/osuosl/master/config/slaves.pybuildbot/osuosl/master/config/slaves.py
Revision 369176 by eugenis:
Add "sanitizer-aarch64-linux-mte" build script.

Due to the lack of mte tests, run llvm/clang/asan tests for now.
Change TypePath in RepositoryPath in Workspace
The file was added/zorg/trunk/zorg/buildbot/builders/sanitizers/buildbot_mte.shzorg/buildbot/builders/sanitizers/buildbot_mte.sh
The file was modified/zorg/trunk/zorg/buildbot/builders/sanitizers/buildbot_selector.pyzorg/buildbot/builders/sanitizers/buildbot_selector.py

Summary

  1. [PowerPC] Use xxleqv to set all one vector IMM(-1). (details)
  2. Remove BitVector.h include. NFCI. (details)
  3. Remove SmallBitVector.h include. NFCI. (details)
  4. Re-land "[compiler-rt] Migrate llvm::make_unique to std::make_unique" (details)
  5. [MCA] Slightly refactor class RetireControlUnit, and add the ability to (details)
  6. [cmake] install_symlink should obey DESTDIR unconditionally (details)
  7. Add a proposal for a libc project under the LLVM umbrella. (details)
  8. [llvm] Migrate llvm::make_unique to std::make_unique (details)
  9. [Hexagon] Generate vector min/max for HVX (details)
  10. [BUNDLER]Improve the test, NFC. (details)
  11. [LLVM][Alignment] Fix MSVC potential division by 0 warning (PR42911) (details)
  12. [Support] Base RWMutex on std::shared_timed_mutex (C++14) (details)
  13. [Driver][Bundler] Improve bundling of object files. (details)
  14. Test commit #2. (details)
  15. [sanitizer_common] Always use posix_spawn on Darwin (details)
  16. [X86] Improve cost model for subvector extraction of less than 128-bit (details)
  17. Fix lld on GCC 5.1 after the C++14 move (details)
  18. [NewPM][PassInstrumentation] IR printing support for (Thin)LTO (details)
  19. [CallGraph] Refine call graph for indirect calls with !callees metadata (details)
  20. [DebugInfo] Avoid crash from dropped fragments in LiveDebugValues (details)
  21. Revert "MemoryBuffer: Add a missing error-check to getOpenFileImpl" (details)
  22. Fix the test, NFC. (details)
  23. Link libpthread into LLVMCore.so (details)
  24. Add LLVMLibC proposal to docs/index.rst. (details)
  25. [X86] Add custom type legalization for bitcasting mmx to (details)
  26. [NFC] Added tests for 'select with ctlz to cttz' fold (details)
  27. Allow standards-based attributes to have leading and trailing (details)
  28. Change test to use uint64_t to support compiling for 32-bit (details)
  29. Rename this file from cx2.c to c2x.c; NFC. (details)
  30. [ValueTracking] Look through ptrmask intrinsics during (details)
  31. [NFC] Add a couple of dump routines for RegisterPressure helper classes (details)
  32. MVT: Add v3i16/v3f16 vectors (details)
  33. Revert [Bugpoint redesign] Added Pass to Remove Global Variables (details)
  34. [Hexagon] Fix instruction selection for vselect v4i8 (details)
  35. Apply llvm-prefer-register-over-unsigned from clang-tidy to LLVM (details)
  36. [WebAssembly] Correctly handle va_arg of zero-sized structures (details)
  37. [Sema] Implement DR2386 for C++17 structured binding (details)
  38. Mark the test as unsupported on darwin, NFC. (details)
  39. Fix nm on GCC 5.1 after the C++14 move (details)
  40. gn build: Merge r369018 (details)
  41. gn build: Merge r369039 (details)
  42. [GWP-ASan] Implement stack frame compression. (details)
  43. [Rewrite][NFC] Add FIXMEs and tests for RemoveLineIfEmpty bug (details)
  44. [MemorySSA] Remove restrictive asserts. (details)
  45. Remove CMake >= v3.13 target_link_options. Instead, use (details)
  46. Stop-hooks weren't getting called on step-out. Fix that. (details)
  47. Add missing MIR serialization text for AArch64II::MO_TAGGED. (details)
  48. [Utils][NFC] Copy bisect usage documents from commit msg into script. (details)
  49. Guard fuzzer build behind Clang-only flags. (details)
  50. [Support] Re-introduce the RWMutexImpl for macOS < 10.12 (details)
  51. [SDAG] Minor code cleanup/standardization of atomic accessors [NFC] (details)
  52. [AIX] For XL, pick GCC-compatible std & default warning options (details)
  53. Revert "[Support] Re-introduce the RWMutexImpl for macOS < 10.12" (details)
  54. [Bugpoint redesign] Output option can now print to STDOUT (details)
  55. [Bugpoint redesign] Added Pass to Remove Global Variables (details)
  56. Move isPointerOffset function to ValueTracking (NFC). (details)
  57. [clang-doc] Fix bitcode writer for access specifiers (details)
  58. [Support] Re-introduce the RWMutexImpl for macOS < 10.12 (details)
  59. [clang-doc] Fix use of source-root flag (details)
  60. [NewPM][PassInstrumentation] Fix test added in r369024. (details)
  61. Re-instate 369051. (details)
  62. [clang-doc] Sort index elements case insensitive (details)
  63. [ARM][LowOverheadLoops] Fix generated code for "revert". (details)
  64. [GlobalISel] CSEMIRBuilder: Add support for G_GEP (details)
  65. Moved binary off add_llvm_executable. Used add_executable instead, as (details)
  66. [DebugLine] Don't try to guess the path style (details)
  67. gn build: Merge r369061 (details)
  68. gn build: Merge r369064 (details)
  69. [clang-doc] Serialize inherited attributes and methods (details)
  70. [clang-tidy] Migrate objc-forbidden-subclassing to use isDerivedFrom 🚛 (details)
  71. [PowerPC] add testcases for folding frame offset - NFC (details)
  72. [analyzer] Analysis: Silence checkers (details)
  73. Disable stack_trace_compressor_fuzzer. (details)
  74. Revert r368987, it caused PR43016. (details)
  75. [clang-tidy] Migrate objc-super-self to use isDerivedFrom 🚛 (details)
  76. Remove the temporary code. NFC. (details)
  77. [lldb-server] Disable a test on Windows until it can be fixed (details)
  78. [X86] Manually reimplement getTargetInsertSubreg in (details)
  79. [ValueTracking] Fix recurrence detection to check both PHI operands. (details)
  80. [clangd] Remove Bind, use C++14 lambda captures instead. NFC (details)
  81. [clangd] Added highlighting for non type templates. (details)
  82. AssumptionCache: remove old affected values after RAUW. (details)
  83. [DebugInfo] Handle complex expressions with spills in LiveDebugValues (details)
  84. [RISCV] Add inline asm constraint A for RISC-V (details)
  85. [SLPVectorizer] Silence null dereference warning. NFCI. (details)
  86. [RISCV] Lower inline asm constraint A for RISC-V (details)
  87. Revert "[CallGraph] Refine call graph for indirect calls with !callees (details)
  88. [RISCV] Allow parsing of bare symbols with offsets (details)
  89. [ASTImporter] Import ctor initializers after setting flags. (details)
  90. Fix typos in LibASTImporter.rst (details)
  91. [clangd] Simplify code of ClangdLSPServer::onCommand (details)
  92. [ARM] Don't pretend we know how to generate MVE VLDn (details)
  93. [X86] Add test case for future MULFIX DAG combine folds. NFC (details)
  94. [DAGCombiner] Add simple folds for SMULFIX/UMULFIX/SMULFIXSAT (details)
  95. Revert [CodeGen] Do the Simple Early Return in block-placement pass to (details)
  96. [clangd] suppress -Wparentheses warning: suggest parentheses around ‘&&’ (details)
  97. [x86] add tests for fdiv with variable operands; NFC (details)
  98. [x86] fix fdiv test; NFC (details)
  99. [ARM] Correct register for narrowing and widening MVE loads and stores. (details)
  100. [libcxxabi] __cxa_guard_require: test guard byte with != 0 instead of == (details)
  101. [X86] Remove unused include. NFCI. (details)
  102. [AArch64InstrInfo] Stop getInstSizeInBytes returning non-zero for meta (details)
  103. [X86][SSE] Add shuffled load tests from PR16739 (details)
  104. [lldb][NFC] Allow for-ranges on StringList (details)
  105. [RISCV] Convert registers from unsigned to Register (details)
  106. Revert rL369112 : [X86][SSE] Add shuffled load tests from PR16739 (details)
  107. [X86][SSE] Add shuffled load tests from PR16739 (details)
  108. [InstCombine] Shift amount reassociation in bittest: trunc-of-shl (details)
  109. [ARM] MVE sext of a load is free (details)
  110. [TextAPI] Update reader to be supported by lib/Object (details)
  111. [InstCombine] Simplify pow(2.0, itofp(y)) to ldexp(1.0, y) (details)
  112. [lld][Hexagon]Support HEX_32 when building shared objects (details)
  113. Relanding r368987 [AArch64] Change location of frame-record within (details)
  114. [clang-doc] Fix records in global namespace (details)
  115. [Hexagon] Generate min/max instructions for 64-bit vectors (details)
  116. [CodeGen/Analysis] Intrinsic llvm.assume should not block tail call (details)
  117. [X86] Alphabetize pass initialization definitions. NFCI. (details)
  118. [SLP] add tests for PR16739; NFC (details)
  119. [ELF][Hexagon] Replace R_HEXAGON_GOT with R_GOTPLT (details)
  120. Fix llvm-config support for CMake build-mode-style builds (details)
  121. [ADT] Remove llvm::make_unique utility. (details)
  122. [SLPVectorizer] Make the scheduler aware of the TreeEntry operands. (details)
  123. Revert [AArch64InstrInfo] Stop getInstSizeInBytes returning non-zero for (details)
  124. [AArch64InstrInfo] Stop getInstSizeInBytes returning non-zero for meta (details)
  125. [X86] combineExtractWithShuffle - handle extract(truncate(x), 0) (details)
  126. [AArch64][GlobalISel] Lower G_SHUFFLE_VECTOR with 1 elt src and 1 elt (details)
  127. [X86] resolveTargetShuffleInputs - add DemandedElts variant. NFCI. (details)
  128. [WebAssembly] Forbid use of EM_ASM with setjmp/longjmp (details)
  129. Escape % in printf format string. (details)
  130. [clang-doc] Redesign of generated HTML files (details)
  131. [InstCombine] canonicalize a scalar-select-of-vectors to vector select (details)
  132. [ORC] Remove some stray debugging output accidentally left in r368707 (details)
  133. [Attributor] Introduce initialize calls and move code to keep attributes (details)
  134. [Attributor][NFC] Introduce aliases for call site attributes (details)
  135. [Attributor] Towards a more structured deduction pattern (details)
  136. Stop abusing SuppressAllDiagnostics when speculatively determining (details)
  137. [OPENMP5.0]Diagnose global variables in lambda not marked as declare (details)
  138. [ARM] push LR before __gnu_mcount_nc (details)
  139. [Test Commit] Fix typo in diagtool.rst (details)
  140. Revert "[ARM] push LR before __gnu_mcount_nc" (details)
  141. [TSan] Don't guard #include <xpc/xpc.h> (details)
  142. [X86] Use Register/MCRegister in more places in X86 (details)
  143. [X86] Support -mlong-double-80 (details)
  144. [Utility] Reimplement RegularExpression on top of llvm::Regex (details)
  145. [RWMutex] Simplify availability check (details)
  146. [Attributor] Add all missing attribute definitions/symbols (details)
  147. [CodeGenPrepare] fix RUN line settings (details)
  148. [clang-format] Fix the bug that joins template closer and > or >> (details)
  149. [CaptureTracking] Allow null to be in either icmp operand (details)
  150. [Attributor] Fix: Make sure we set the changed flag (details)
  151. [Attributor] Fix: Do not partially resolve returned calls. (details)
  152. [doc] Fix some minor formatting issues. (details)
  153. [ARM] Preserve liveness in ARMConstantIslands. (details)
  154. [InstCombine][NFC] Revisit tests in (details)
  155. [TSan] Add interceptors for os_unfair_lock (details)
  156. Revert "[TSan] Don't guard #include <xpc/xpc.h>" (details)
  157. [InstCombine][NFC] reuse-constant-from-select-in-icmp.ll - check (details)
  158. Revert [X86] SimplifyDemandedVectorElts - attempt to recombine target (details)
  159. [CodeGenPrepare] Fix use-after-free (details)
  160. [llvm-readobj] Fallback to PT_NOTE if file doesn't have sections (details)
  161. Revert "[X86] Support -mlong-double-80" (details)
  162. [ORC] Re-introduce self-dependence accidentally dropped from a unit (details)
  163. [AArch64][GlobalISel] Fix an assertion during G_UNMERGE selection for (details)
  164. Reland "[ARM] push LR before __gnu_mcount_nc" (details)
  165. Revert r367891 - "[InstCombine] combine mul+shl separated by zext" (details)
  166. Add LLDB dataformatters for llvm::StringRef and (details)
  167. [llvm-readobj] Unwrap the value first to avoid the error (details)
  168. Simplify code (NFC). (details)
  169. [Fuchsia] Create the VMO during initialization, not during exit (details)
  170. [MemorySSA] Loop passes should mark MSSA preserved when available. (details)
  171. [clang-doc] Fix casting not working in gcc 5.4.0 (details)
  172. [X86] Support -mlong-double-80 (details)
  173. [ELF][PPC] Fix getRelExpr for R_PPC64_REL16_HI (details)
  174. Revert [AArch64InstrInfo] Stop getInstSizeInBytes returning non-zero for (details)
  175. Revert Revert [AArch64InstrInfo] Stop getInstSizeInBytes returning (details)
  176. [ELF] Replace local variable hasExportDynamic with (details)
  177. [circular_raw_ostream] Delegate is_displayed to contained stream (details)
  178. [test] - Remove precomiled openbsd-phdrs.elf-x86-64 objects. (details)
  179. [llvm-readobj/llvm-readelf] - Improve/cleanup the error reporting API. (details)
  180. [CodeGen] Do the Simple Early Return in block-placement pass to optimize (details)
  181. [llvm-readobj] - An attemp to fix BB after r369191. (details)
  182. Revert r369190, r369192 ([llvm-readobj/llvm-readelf] - Improve/cleanup (details)
  183. Recommit r369190 "[llvm-readobj/llvm-readelf] - Improve/cleanup the (details)
  184. [analyzer] Turn an assert into an if condition (details)
  185. [SemaDeclCXX] Allow inheriting constructor declaration to specify a (details)
  186. [NFC][InstCombine] Some tests for 'shift amount reassoc in bit test - (details)
  187. [lldb][NFC] Remove unused MaterializeInitializer and (details)
  188. [BPF] Fix bpf llvm-objdump issues. (details)
  189. [X86] Add a one use check to the combineStore code that handles (details)
  190. TableGen: Revert changes from r369038 (details)
  191. AMDGPU: Disambiguate v3f16 format in load/store tables (details)
  192. AMDGPU: Fix iterator error when lowering SI_END_CF (details)
  193. [SelectionDAG] Add a node creation debug message to getMachineNode. (details)
  194. [TargetLowering] Teach computeRegisterProperties to only widen (details)
  195. [Diagnostics] Improve -Wsizeof-pointer-div (details)
  196. [InstCombine] Cherry-pick NFC cleanups of (details)
  197. [MC] MCFixup - Fix cppcheck + MSVC analyzer uninitialized member (details)
  198. [X86][SSE] Improve PACKSS shuffle tests to better match codegen from (details)
  199. [X86] isTargetShuffleEquivalent - early out on illegal shuffle masks. (details)
  200. [X86] isTargetShuffleEquivalent - add BUILD_VECTOR matching (details)
  201. Fix signed/unsigned comparison warning. NFCI. (details)
  202. [clang-format] Fix a bug that joins template closer and = (details)
  203. [X86] Improve lower1BitShuffle handling for KSHIFTL on narrow vectors. (details)
  204. [Docs] Test commit (details)
  205. [Diagnostics] Diagnose misused xor as pow (details)
  206. [ORC] Remove some dead code. (details)
  207. [ORC] Make sure we linker-mangle symbol names in the SpeculationLayer. (details)
  208. [CMake] Update CMAKE_OSX_DEPLOYMENT_TARGET to 10.12. (details)
  209. [cmake] Move blocks out of redundant else( MSVC ); NFC (details)
  210. [X86] Replace uses of getZeroVector for vXi1 vectors with (details)
  211. [X86] Add test cases for suboptimal insertion of a vXi1 vector into a (details)
  212. [X86] Add a special case to LowerCONCAT_VECTORSvXi1 to handle (details)
  213. [X86] Add test case for missed opportunity to recognize a vXi1 shuffle (details)
  214. [X86] Teach lower1BitShuffle to recognize padding a subvector with zeros (details)
  215. [X86] Teach lower1BitShuffle to match KSHIFTR that doesn't use Zeroable (details)
  216. [X86] Fix the lower1BitShuffle code added in r369215 to correctly pass (details)
  217. [clangd] Update features table in the docs with links to LSP extension (details)
  218. [llvm-objcopy][MachO] Support load commands used in executables/shared (details)
  219. [llvm-objcopy][MachO] Implement a layout algorithm for executables (details)
  220. [X86] Teach lower1BitShuffle to match right shifts with upper zero (details)
  221. [MC] Don't emit .symver redirected symbols to the symbol table (details)
  222. Revert r369230 and r369231 (details)
  223. [lldb] Remove unused inheritance in RegularExpression (details)
  224. Revert [Attributor] Fix: Do not partially resolve returned calls. (details)
  225. [lldb][NFC] Address review comments to StringList for-loop support (details)
  226. [clangd] Added special HighlightingKind for function parameters. (details)
  227. [MC] Delete unnecessary diagnostic: "No relocation available to (details)
  228. [lldb][NFC] Use GetMaxStringLength in CommandObjectApropos::DoExecute (details)
  229. Revert [Attributor] Fix: Make sure we set the changed flag (details)
  230. [lldb][NFC] Remove StringList::AutoComplete (details)
  231. [DebugInfo] Test for variable range un-coalescing (details)
  232. [ARM] MVE sext costs (details)
  233. [ARM] Add support for MVE vaddv (details)
  234. [ELF][ARM] Add a test that maxes out the thunk convergence limit (details)
  235. [DebugInfo] Make postra sinking of DBG_VALUEs subregister-safe (details)
  236. [MC] Simplify ELFObjectWriter::recordRelocation. NFC (details)
  237. [lldb][NFC] Add a few more completion tests to increase test coverage (details)
  238. [SLP] reduce duplicated code; NFC (details)
  239. [OpenCL] Fix addr space deduction for pointers/references to arrays. (details)
  240. [lldb][NFC] Use CompletionRequest in Variable::AutoComplete (details)
  241. [OpenCL] Add generic type handling for builtin functions (details)
  242. [llvm-readobj] unwrapOrError: remove unnecessary llvm_unreachable after (details)
  243. [SLP] add test that requires shuffle of scalars; NFC (details)
  244. [DebugInfo] Allow bundled calls in the MIR's call site info (details)
  245. [RISCV] Don't force absolute FK_Data_X fixups to relocs (details)
  246. [lld][Hexagon] Add GOTREL relocations. (details)
  247. Don't keep stale pointers to LoopInfos. (details)
  248. [ELF][Hexagon] Improve error message for unknown relocations (details)
  249. [PeepholeOptimizer] Don't assume bitcast def always has input (details)
  250. [ELF] Move (copy relocation/canonical PLT) before error checking (details)
  251. [Object/COFF.h] - Stop returning std::error_code in a few methods. NFCI. (details)
  252. Automatically generate AVX512 test cases. NFC (details)
  253. [llvm-objdump] - Restore lost comment. (details)
  254. [nfc] Silent gcc warning (details)
  255. [lldb][NFC] Stop using GetNumberOfMatches in CompletionRequest test (details)
  256. [TargetLowering] x s% C == 0 fold: vector divisor with INT_MIN handling (details)
  257. Filesystem/Windows: fix inconsistency in readNativeFileSlice API (details)
  258. [libc++] reverts commit a5f5aad568bb7a91ceee47641f3076ac339ef8c7. (details)
  259. [ELF] Simplify processRelocAux and allow a corner-case error (details)
  260. [dotest] Add --dwarf-version to override the tested DWARF version. (details)
  261. [clangd] Added highlighting for tokens that are macro arguments. (details)
  262. [lld][WebAssembly] Honor --no-export-dynamic even with -shared (details)
  263. [Attributor] -attributor-verify has false positives. Temporarily remove (details)
  264. [X86] Added extensive scheduling model tests for all the CMPXCHG (details)
  265. [libc++] Add XFAIL for is_base_of test on AppleClang 11 (details)
  266. Implement P1668R1 (details)
  267. Update cxx_status.html with P1668 status. (details)
  268. [CGP] Remove ModifiedDT from the makeBitReverse loop (details)
  269. Fix test where diagnostics changed in P1668 implementation (details)
  270. [Sanitizer] arc4random interception on Mac (details)
  271. Fix poorly formatted HTML in the cxx_status.html file caused by adding (details)
  272. [X86] Teach lowerV4I32Shuffle to only use broadcasts if the mask has (details)
  273. [X86] Move scheduling tests for CMPXCHG to the corresponding (details)
  274. [TSan] Rename file to make it clear that it defines interceptors (details)
  275. Build symbolizer runtime with C++14. (details)
  276. [MemorySSA] Rename uses when inserting memory uses. (details)
  277. [WebAssembly][MC] Allow empty assembly functions (details)
  278. [lldb] Make TestIOHandlerCompletion more stable and document it (details)
  279. Re-apply fixed "[Attributor] Fix: Make sure we set the changed flag" (details)
  280. [Support] Replace sys::Mutex with their standard equivalents. (details)
  281. [lldb-vscode] add `launchCommands` to handle launch specific commands (details)
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/test/CodeGen/PowerPC/power9-moves-and-splats.ll
The file was modifiedllvm/test/CodeGen/PowerPC/vselect-constants.ll
The file was modifiedllvm/test/CodeGen/PowerPC/signbit-shift.ll
The file was modifiedllvm/test/CodeGen/PowerPC/vec_add_sub_doubleword.ll
The file was modifiedllvm/lib/Target/PowerPC/P9InstrResources.td
The file was modifiedllvm/lib/Target/PowerPC/PPCInstrInfo.cpp
The file was modifiedllvm/lib/Target/PowerPC/PPCInstrVSX.td
The file was modifiedllvm/test/CodeGen/PowerPC/sat-add.ll
The file was modifiedllvm/test/CodeGen/PowerPC/setcc-logic.ll
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/lib/MCA/HardwareUnits/RetireControlUnit.cpp
The file was modifiedllvm/lib/MCA/Stages/ExecuteStage.cpp
The file was modifiedllvm/lib/MCA/HardwareUnits/Scheduler.cpp
The file was modifiedllvm/include/llvm/MCA/HardwareUnits/RetireControlUnit.h
The file was modifiedllvm/lib/MCA/Stages/DispatchStage.cpp
The file was modifiedllvm/lib/MCA/Stages/RetireStage.cpp
The file was modifiedllvm/include/llvm/MCA/Instruction.h
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/examples/Kaleidoscope/BuildingAJIT/Chapter2/KaleidoscopeJIT.h
The file was modifiedllvm/lib/LTO/LTOBackend.cpp
The file was modifiedllvm/lib/Transforms/IPO/ThinLTOBitcodeWriter.cpp
The file was modifiedllvm/tools/obj2yaml/macho2yaml.cpp
The file was modifiedllvm/tools/llvm-stress/llvm-stress.cpp
The file was modifiedllvm/include/llvm/Support/Error.h
The file was modifiedllvm/lib/ExecutionEngine/Orc/CompileUtils.cpp
The file was modifiedllvm/tools/dsymutil/DwarfLinker.cpp
The file was modifiedllvm/unittests/ADT/IteratorTest.cpp
The file was modifiedllvm/utils/TableGen/AsmMatcherEmitter.cpp
The file was modifiedllvm/lib/MC/MCAsmStreamer.cpp
The file was modifiedllvm/lib/Target/X86/MCTargetDesc/X86ELFObjectWriter.cpp
The file was modifiedllvm/lib/CodeGen/LLVMTargetMachine.cpp
The file was modifiedllvm/lib/DebugInfo/PDB/Native/TpiStreamBuilder.cpp
The file was modifiedllvm/lib/ExecutionEngine/Orc/ExecutionUtils.cpp
The file was modifiedllvm/tools/llvm-mca/CodeRegion.cpp
The file was modifiedllvm/lib/Target/Hexagon/HexagonVLIWPacketizer.cpp
The file was modifiedllvm/lib/CodeGen/GlobalISel/RegBankSelect.cpp
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPUHSAMetadataStreamer.h
The file was modifiedllvm/lib/MC/WinCOFFObjectWriter.cpp
The file was modifiedllvm/lib/Target/SystemZ/MCTargetDesc/SystemZMCObjectWriter.cpp
The file was modifiedllvm/lib/CodeGen/GCMetadata.cpp
The file was modifiedllvm/unittests/ExecutionEngine/Orc/ThreadSafeModuleTest.cpp
The file was modifiedllvm/lib/Target/XCore/XCoreTargetMachine.cpp
The file was modifiedllvm/include/llvm/DebugInfo/PDB/PDBSymbol.h
The file was modifiedllvm/utils/TableGen/CodeGenDAGPatterns.cpp
The file was modifiedllvm/lib/Analysis/LazyBranchProbabilityInfo.cpp
The file was modifiedllvm/lib/Remarks/YAMLRemarkParser.cpp
The file was modifiedllvm/lib/CodeGen/MachineOptimizationRemarkEmitter.cpp
The file was modifiedllvm/lib/Target/WebAssembly/MCTargetDesc/WebAssemblyWasmObjectWriter.cpp
The file was modifiedllvm/tools/llvm-exegesis/lib/Analysis.cpp
The file was modifiedllvm/examples/Kaleidoscope/BuildingAJIT/Chapter4/toy.cpp
The file was modifiedllvm/unittests/ExecutionEngine/JITLink/MachO_x86_64_Tests.cpp
The file was modifiedllvm/lib/CodeGen/CodeGenPrepare.cpp
The file was modifiedllvm/lib/ObjectYAML/MinidumpYAML.cpp
The file was modifiedllvm/lib/Target/AMDGPU/SIModeRegister.cpp
The file was modifiedllvm/unittests/CodeGen/AArch64SelectionDAGTest.cpp
The file was modifiedllvm/tools/obj2yaml/elf2yaml.cpp
The file was modifiedllvm/unittests/IR/MetadataTest.cpp
The file was modifiedllvm/lib/Transforms/Coroutines/CoroEarly.cpp
The file was modifiedllvm/docs/tutorial/MyFirstLanguageFrontend/LangImpl05.rst
The file was modifiedllvm/lib/Target/PowerPC/MCTargetDesc/PPCMachObjectWriter.cpp
The file was modifiedllvm/lib/CodeGen/IfConversion.cpp
The file was modifiedllvm/lib/Transforms/Utils/ImportedFunctionsInliningStatistics.cpp
The file was modifiedllvm/tools/llvm-cov/CodeCoverage.cpp
The file was modifiedllvm/lib/Transforms/Scalar/LICM.cpp
The file was modifiedllvm/lib/Transforms/Vectorize/LoopVectorize.cpp
The file was modifiedllvm/lib/DebugInfo/PDB/Native/PDBFileBuilder.cpp
The file was modifiedllvm/lib/Target/BPF/MCTargetDesc/BPFELFObjectWriter.cpp
The file was modifiedllvm/lib/MC/MachObjectWriter.cpp
The file was modifiedllvm/utils/TableGen/DAGISelEmitter.cpp
The file was modifiedllvm/tools/llvm-rc/llvm-rc.cpp
The file was modifiedllvm/lib/Analysis/LoopCacheAnalysis.cpp
The file was modifiedllvm/lib/Target/ARM/ARMTargetMachine.cpp
The file was modifiedllvm/unittests/CodeGen/GlobalISel/PatternMatchTest.cpp
The file was modifiedllvm/tools/dsymutil/MachOUtils.cpp
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPULibFunc.cpp
The file was modifiedllvm/lib/DebugInfo/PDB/Native/NativeTypeFunctionSig.cpp
The file was modifiedllvm/lib/Target/X86/X86TargetMachine.cpp
The file was modifiedllvm/lib/Target/RISCV/MCTargetDesc/RISCVELFObjectWriter.cpp
The file was modifiedllvm/tools/llvm-pdbutil/InputFile.cpp
The file was modifiedllvm/include/llvm/DebugInfo/DIContext.h
The file was modifiedllvm/lib/DebugInfo/PDB/UDTLayout.cpp
The file was modifiedllvm/tools/llvm-elfabi/ELFObjHandler.cpp
The file was modifiedllvm/lib/Target/RISCV/RISCVTargetMachine.cpp
The file was modifiedllvm/unittests/ExecutionEngine/Orc/LegacyRTDyldObjectLinkingLayerTest.cpp
The file was modifiedllvm/utils/TableGen/GlobalISelEmitter.cpp
The file was modifiedllvm/include/llvm/ExecutionEngine/Orc/LambdaResolver.h
The file was modifiedllvm/lib/Support/VirtualFileSystem.cpp
The file was modifiedllvm/lib/MC/MCParser/DarwinAsmParser.cpp
The file was modifiedllvm/lib/Target/WebAssembly/WebAssemblyTargetMachine.cpp
The file was modifiedllvm/tools/llvm-objcopy/MachO/MachOReader.cpp
The file was modifiedllvm/include/llvm/MCA/HardwareUnits/Scheduler.h
The file was modifiedllvm/lib/Analysis/OptimizationRemarkEmitter.cpp
The file was modifiedllvm/lib/Target/AMDGPU/AsmParser/AMDGPUAsmParser.cpp
The file was modifiedllvm/tools/obj2yaml/wasm2yaml.cpp
The file was modifiedllvm/lib/ProfileData/ProfileSummaryBuilder.cpp
The file was modifiedllvm/tools/llvm-readobj/COFFDumper.cpp
The file was modifiedllvm/lib/MC/ELFObjectWriter.cpp
The file was modifiedllvm/tools/llvm-exegesis/lib/BenchmarkRunner.cpp
The file was modifiedllvm/lib/Target/AArch64/MCTargetDesc/AArch64MachObjectWriter.cpp
The file was modifiedllvm/lib/Target/AMDGPU/SIPeepholeSDWA.cpp
The file was modifiedllvm/include/llvm/MCA/HardwareUnits/LSUnit.h
The file was modifiedllvm/examples/Kaleidoscope/BuildingAJIT/Chapter5/KaleidoscopeJIT.h
The file was modifiedllvm/unittests/Support/BinaryStreamTest.cpp
The file was modifiedllvm/lib/ExecutionEngine/Orc/LLJIT.cpp
The file was modifiedllvm/lib/Transforms/Scalar/NewGVN.cpp
The file was modifiedllvm/lib/Target/AArch64/MCTargetDesc/AArch64ELFObjectWriter.cpp
The file was modifiedllvm/lib/DebugInfo/PDB/Native/GSIStreamBuilder.cpp
The file was modifiedllvm/tools/llvm-rtdyld/llvm-rtdyld.cpp
The file was modifiedllvm/lib/Target/AArch64/AArch64A57FPLoadBalancing.cpp
The file was modifiedllvm/lib/ExecutionEngine/Orc/OrcCBindingsStack.h
The file was modifiedllvm/tools/llvm-objcopy/ELF/ELFObjcopy.cpp
The file was modifiedllvm/lib/Analysis/ModuleSummaryAnalysis.cpp
The file was modifiedllvm/tools/dsymutil/MachODebugMapParser.cpp
The file was modifiedllvm/tools/llvm-rc/ResourceScriptStmt.h
The file was modifiedllvm/lib/Target/AVR/AVRTargetMachine.cpp
The file was modifiedllvm/tools/llvm-pdbutil/DumpOutputStyle.cpp
The file was modifiedllvm/include/llvm/CodeGen/LiveInterval.h
The file was modifiedllvm/unittests/DebugInfo/PDB/PDBApiTest.cpp
The file was modifiedllvm/examples/Kaleidoscope/BuildingAJIT/Chapter1/toy.cpp
The file was modifiedllvm/utils/TableGen/FixedLenDecoderEmitter.cpp
The file was modifiedllvm/lib/Target/X86/MCTargetDesc/X86WinCOFFTargetStreamer.cpp
The file was modifiedllvm/docs/tutorial/MyFirstLanguageFrontend/LangImpl06.rst
The file was modifiedllvm/lib/Target/ARM/ARMParallelDSP.cpp
The file was modifiedllvm/include/llvm/ExecutionEngine/Orc/RemoteObjectLayer.h
The file was modifiedllvm/lib/CodeGen/AsmPrinter/CodeViewDebug.cpp
The file was modifiedllvm/lib/Target/X86/MCTargetDesc/X86WinCOFFObjectWriter.cpp
The file was modifiedllvm/lib/Object/XCOFFObjectFile.cpp
The file was modifiedllvm/lib/Remarks/BitstreamRemarkSerializer.cpp
The file was modifiedllvm/lib/Analysis/AssumptionCache.cpp
The file was modifiedllvm/tools/dsymutil/DwarfStreamer.cpp
The file was modifiedllvm/lib/CodeGen/MachineFunction.cpp
The file was modifiedllvm/tools/llvm-objdump/MachODump.cpp
The file was modifiedllvm/lib/Target/MSP430/MCTargetDesc/MSP430ELFObjectWriter.cpp
The file was modifiedllvm/tools/llvm-lto2/llvm-lto2.cpp
The file was modifiedllvm/lib/ExecutionEngine/Orc/Layer.cpp
The file was modifiedllvm/lib/Target/BPF/AsmParser/BPFAsmParser.cpp
The file was modifiedllvm/lib/Target/BPF/BTFDebug.cpp
The file was modifiedllvm/lib/Transforms/IPO/Inliner.cpp
The file was modifiedllvm/lib/ExecutionEngine/Orc/IndirectionUtils.cpp
The file was modifiedllvm/lib/TableGen/TGLexer.cpp
The file was modifiedllvm/lib/Option/ArgList.cpp
The file was modifiedllvm/include/llvm/IR/ModuleSummaryIndexYAML.h
The file was modifiedllvm/lib/DebugInfo/DWARF/DWARFContext.cpp
The file was modifiedllvm/examples/SpeculativeJIT/SpeculativeJIT.cpp
The file was modifiedllvm/lib/Support/Error.cpp
The file was modifiedllvm/examples/ParallelJIT/ParallelJIT.cpp
The file was modifiedllvm/lib/Transforms/Utils/PredicateInfo.cpp
The file was modifiedllvm/lib/Analysis/DependenceAnalysis.cpp
The file was modifiedllvm/lib/Transforms/IPO/HotColdSplitting.cpp
The file was modifiedllvm/include/llvm/CodeGen/PBQP/Math.h
The file was modifiedllvm/lib/Transforms/IPO/SCCP.cpp
The file was modifiedllvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldMachO.cpp
The file was modifiedllvm/lib/FuzzMutate/FuzzerCLI.cpp
The file was modifiedllvm/tools/sancov/sancov.cpp
The file was modifiedllvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUELFObjectWriter.cpp
The file was modifiedllvm/include/llvm/ExecutionEngine/Orc/LazyReexports.h
The file was modifiedllvm/lib/Target/NVPTX/NVPTXTargetMachine.cpp
The file was modifiedllvm/lib/Target/ARM/MCTargetDesc/ARMELFObjectWriter.cpp
The file was modifiedllvm/lib/Transforms/Utils/Evaluator.cpp
The file was modifiedllvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
The file was modifiedllvm/include/llvm/ProfileData/InstrProf.h
The file was modifiedllvm/include/llvm/IR/PassManagerInternal.h
The file was modifiedllvm/lib/Transforms/IPO/WholeProgramDevirt.cpp
The file was modifiedllvm/lib/Support/FileOutputBuffer.cpp
The file was modifiedllvm/utils/TableGen/X86DisassemblerTables.cpp
The file was modifiedllvm/docs/tutorial/MyFirstLanguageFrontend/LangImpl02.rst
The file was modifiedllvm/lib/Support/Timer.cpp
The file was modifiedllvm/lib/CodeGen/AsmPrinter/DwarfCompileUnit.cpp
The file was modifiedllvm/unittests/MC/DwarfLineTables.cpp
The file was modifiedllvm/lib/DebugInfo/PDB/Native/NativeRawSymbol.cpp
The file was modifiedllvm/tools/llvm-pdbutil/ExplainOutputStyle.cpp
The file was modifiedllvm/utils/TableGen/CodeGenSchedule.cpp
The file was modifiedllvm/include/llvm/ExecutionEngine/Orc/LazyEmittingLayer.h
The file was modifiedllvm/lib/CodeGen/PseudoSourceValue.cpp
The file was modifiedllvm/lib/ProfileData/SampleProfReader.cpp
The file was modifiedllvm/tools/llvm-isel-fuzzer/llvm-isel-fuzzer.cpp
The file was modifiedllvm/lib/CodeGen/GlobalISel/Combiner.cpp
The file was modifiedllvm/unittests/XRay/FDRProducerConsumerTest.cpp
The file was modifiedllvm/tools/llvm-dis/llvm-dis.cpp
The file was modifiedllvm/lib/Target/Hexagon/MCTargetDesc/HexagonELFObjectWriter.cpp
The file was modifiedllvm/lib/Transforms/Coroutines/CoroElide.cpp
The file was modifiedllvm/tools/llvm-mc-assemble-fuzzer/llvm-mc-assemble-fuzzer.cpp
The file was modifiedllvm/include/llvm/IR/Metadata.h
The file was modifiedllvm/lib/IR/RemarkStreamer.cpp
The file was modifiedllvm/lib/Target/PowerPC/AsmParser/PPCAsmParser.cpp
The file was modifiedllvm/examples/Kaleidoscope/Chapter2/toy.cpp
The file was modifiedllvm/include/llvm/ExecutionEngine/Orc/RTDyldObjectLinkingLayer.h
The file was modifiedllvm/lib/MCA/HardwareUnits/ResourceManager.cpp
The file was modifiedllvm/lib/Transforms/Instrumentation/HWAddressSanitizer.cpp
The file was modifiedllvm/lib/Transforms/Scalar/EarlyCSE.cpp
The file was modifiedllvm/lib/Target/Mips/MipsTargetMachine.cpp
The file was modifiedllvm/examples/Kaleidoscope/BuildingAJIT/Chapter5/toy.cpp
The file was modifiedllvm/lib/DebugInfo/PDB/DIA/DIASectionContrib.cpp
The file was modifiedllvm/lib/Transforms/Instrumentation/CFGMST.h
The file was modifiedllvm/lib/AsmParser/Parser.cpp
The file was modifiedllvm/lib/DebugInfo/DWARF/DWARFVerifier.cpp
The file was modifiedllvm/lib/ExecutionEngine/Orc/CompileOnDemandLayer.cpp
The file was modifiedllvm/lib/Target/AArch64/MCTargetDesc/AArch64WinCOFFObjectWriter.cpp
The file was modifiedllvm/lib/Support/JSON.cpp
The file was modifiedllvm/utils/TableGen/SearchableTableEmitter.cpp
The file was modifiedllvm/lib/CodeGen/GlobalISel/IRTranslator.cpp
The file was modifiedllvm/tools/llvm-profdata/llvm-profdata.cpp
The file was modifiedllvm/examples/Kaleidoscope/Chapter4/toy.cpp
The file was modifiedllvm/lib/MCA/HardwareUnits/Scheduler.cpp
The file was modifiedllvm/lib/MC/MCObjectStreamer.cpp
The file was modifiedllvm/include/llvm/IR/ModuleSummaryIndex.h
The file was modifiedllvm/lib/Target/SystemZ/SystemZTargetMachine.cpp
The file was modifiedllvm/include/llvm/Support/GenericDomTree.h
The file was modifiedllvm/lib/Target/Sparc/AsmParser/SparcAsmParser.cpp
The file was modifiedllvm/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp
The file was modifiedllvm/lib/Target/Hexagon/HexagonTargetMachine.cpp
The file was modifiedllvm/tools/opt/opt.cpp
The file was modifiedllvm/lib/Target/AVR/MCTargetDesc/AVRELFObjectWriter.cpp
The file was modifiedllvm/unittests/ADT/MakeUniqueTest.cpp
The file was modifiedllvm/lib/Target/X86/AsmParser/X86Operand.h
The file was modifiedllvm/unittests/DebugInfo/DWARF/DwarfGenerator.cpp
The file was modifiedllvm/lib/Target/PowerPC/MCTargetDesc/PPCXCOFFObjectWriter.cpp
The file was modifiedllvm/lib/Transforms/Utils/LoopSimplify.cpp
The file was modifiedllvm/tools/llvm-opt-fuzzer/llvm-opt-fuzzer.cpp
The file was modifiedllvm/lib/Transforms/Instrumentation/ControlHeightReduction.cpp
The file was modifiedllvm/lib/Analysis/LazyValueInfo.cpp
The file was modifiedllvm/lib/DebugInfo/DWARF/DWARFUnitIndex.cpp
The file was modifiedllvm/lib/IR/AsmWriter.cpp
The file was modifiedllvm/lib/Target/PowerPC/MCTargetDesc/PPCELFObjectWriter.cpp
The file was modifiedllvm/tools/llvm-pdbutil/PrettyTypeDumper.cpp
The file was modifiedllvm/lib/CodeGen/MachineBlockPlacement.cpp
The file was modifiedllvm/lib/Remarks/RemarkSerializer.cpp
The file was modifiedllvm/lib/WindowsManifest/WindowsManifestMerger.cpp
The file was modifiedllvm/tools/llvm-exegesis/lib/Assembler.cpp
The file was modifiedllvm/unittests/ExecutionEngine/Orc/CoreAPIsTest.cpp
The file was modifiedllvm/unittests/Target/AArch64/InstSizes.cpp
The file was modifiedllvm/examples/Kaleidoscope/BuildingAJIT/Chapter4/KaleidoscopeJIT.h
The file was modifiedllvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldChecker.cpp
The file was modifiedllvm/lib/CodeGen/LiveDebugValues.cpp
The file was modifiedllvm/lib/ExecutionEngine/OProfileJIT/OProfileJITEventListener.cpp
The file was modifiedllvm/lib/Support/YAMLTraits.cpp
The file was modifiedllvm/lib/Transforms/Instrumentation/IndirectCallPromotion.cpp
The file was modifiedllvm/lib/Target/Lanai/AsmParser/LanaiAsmParser.cpp
The file was modifiedllvm/examples/Kaleidoscope/Chapter7/toy.cpp
The file was modifiedllvm/lib/Target/Mips/AsmParser/MipsAsmParser.cpp
The file was modifiedllvm/examples/Kaleidoscope/Chapter3/toy.cpp
The file was modifiedllvm/lib/Transforms/Scalar/GVNHoist.cpp
The file was modifiedllvm/lib/DebugInfo/PDB/Native/DbiStreamBuilder.cpp
The file was modifiedllvm/tools/llvm-exegesis/lib/Target.cpp
The file was modifiedllvm/lib/Transforms/Utils/CloneModule.cpp
The file was modifiedllvm/tools/gold/gold-plugin.cpp
The file was modifiedllvm/lib/Analysis/MemorySSA.cpp
The file was modifiedllvm/lib/Bitcode/Reader/BitcodeReader.cpp
The file was modifiedllvm/tools/llvm-exegesis/lib/X86/Target.cpp
The file was modifiedllvm/unittests/ProfileData/InstrProfTest.cpp
The file was modifiedllvm/lib/CodeGen/TargetPassConfig.cpp
The file was modifiedllvm/lib/DebugInfo/PDB/Native/TpiStream.cpp
The file was modifiedllvm/lib/Object/MachOObjectFile.cpp
The file was modifiedllvm/tools/llvm-rc/ResourceScriptParser.cpp
The file was modifiedllvm/lib/Target/AVR/AsmParser/AVRAsmParser.cpp
The file was modifiedllvm/tools/llvm-lto/llvm-lto.cpp
The file was modifiedllvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
The file was modifiedllvm/unittests/Transforms/Vectorize/VPlanTestBase.h
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPUSubtarget.cpp
The file was modifiedllvm/lib/Target/Sparc/MCTargetDesc/SparcELFObjectWriter.cpp
The file was modifiedllvm/lib/Target/AArch64/AsmParser/AArch64AsmParser.cpp
The file was modifiedllvm/lib/ObjectYAML/ELFEmitter.cpp
The file was modifiedllvm/lib/Target/RISCV/AsmParser/RISCVAsmParser.cpp
The file was modifiedllvm/lib/CodeGen/RegAllocPBQP.cpp
The file was modifiedllvm/lib/Target/AArch64/AArch64Subtarget.cpp
The file was modifiedllvm/unittests/CodeGen/MachineInstrTest.cpp
The file was modifiedllvm/lib/DebugInfo/PDB/Native/NativeEnumInjectedSources.cpp
The file was modifiedllvm/docs/ORCv2.rst
The file was modifiedllvm/lib/CodeGen/InlineSpiller.cpp
The file was modifiedllvm/lib/Transforms/Instrumentation/PGOMemOPSizeOpt.cpp
The file was modifiedllvm/examples/HowToUseLLJIT/HowToUseLLJIT.cpp
The file was modifiedllvm/lib/DebugInfo/PDB/PDBSymbolTypeFunctionSig.cpp
The file was modifiedllvm/lib/Target/ARM/MCTargetDesc/ARMMachObjectWriter.cpp
The file was modifiedllvm/lib/DebugInfo/PDB/Native/DbiModuleDescriptorBuilder.cpp
The file was modifiedllvm/include/llvm/ExecutionEngine/Orc/RPCUtils.h
The file was modifiedllvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
The file was modifiedllvm/lib/Analysis/IndirectCallPromotionAnalysis.cpp
The file was modifiedllvm/lib/Transforms/IPO/FunctionImport.cpp
The file was modifiedllvm/examples/Kaleidoscope/BuildingAJIT/Chapter3/KaleidoscopeJIT.h
The file was modifiedllvm/lib/LTO/Caching.cpp
The file was modifiedllvm/lib/DebugInfo/PDB/Native/PDBFile.cpp
The file was modifiedllvm/unittests/Linker/LinkModulesTest.cpp
The file was modifiedllvm/include/llvm/Analysis/RegionInfoImpl.h
The file was modifiedllvm/lib/Target/BPF/BPFTargetMachine.cpp
The file was modifiedllvm/lib/Target/X86/X86CondBrFolding.cpp
The file was modifiedllvm/lib/Remarks/YAMLRemarkSerializer.cpp
The file was modifiedllvm/unittests/ExecutionEngine/ExecutionEngineTest.cpp
The file was modifiedllvm/lib/DebugInfo/MSF/MappedBlockStream.cpp
The file was modifiedllvm/unittests/ADT/MapVectorTest.cpp
The file was modifiedllvm/lib/CodeGen/AsmPrinter/AsmPrinterInlineAsm.cpp
The file was modifiedllvm/lib/Target/ARM/MCTargetDesc/ARMWinCOFFObjectWriter.cpp
The file was modifiedllvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.h
The file was modifiedllvm/tools/lli/lli.cpp
The file was modifiedllvm/utils/TableGen/CodeGenTarget.cpp
The file was modifiedllvm/lib/Target/WebAssembly/WebAssemblyMachineFunctionInfo.cpp
The file was modifiedllvm/unittests/Transforms/Utils/ValueMapperTest.cpp
The file was modifiedllvm/include/llvm/CodeGen/MachinePipeliner.h
The file was modifiedllvm/tools/llvm-pdbutil/llvm-pdbutil.cpp
The file was modifiedllvm/examples/LLJITExamples/ExampleModules.h
The file was modifiedllvm/examples/Kaleidoscope/Chapter5/toy.cpp
The file was modifiedllvm/lib/Target/Lanai/MCTargetDesc/LanaiELFObjectWriter.cpp
The file was modifiedllvm/lib/XRay/FDRRecordProducer.cpp
The file was modifiedllvm/lib/Analysis/OrderedInstructions.cpp
The file was modifiedllvm/lib/CodeGen/AsmPrinter/DwarfDebug.h
The file was modifiedllvm/lib/Transforms/IPO/PartialInlining.cpp
The file was modifiedllvm/include/llvm/ExecutionEngine/Orc/CompileOnDemandLayer.h
The file was modifiedllvm/lib/DebugInfo/DWARF/DWARFUnit.cpp
The file was modifiedllvm/include/llvm/ExecutionEngine/Orc/Legacy.h
The file was modifiedllvm/lib/ExecutionEngine/Orc/ThreadSafeModule.cpp
The file was modifiedllvm/lib/Target/Hexagon/HexagonSubtarget.cpp
The file was modifiedllvm/include/llvm/CodeGen/TargetPassConfig.h
The file was modifiedllvm/lib/CodeGen/MIRParser/MIRParser.cpp
The file was modifiedllvm/lib/ExecutionEngine/JITLink/MachOAtomGraphBuilder.cpp
The file was modifiedllvm/lib/Target/Sparc/SparcTargetMachine.cpp
The file was modifiedllvm/unittests/XRay/FDRRecordPrinterTest.cpp
The file was modifiedllvm/tools/llvm-objcopy/ELF/Object.cpp
The file was modifiedllvm/unittests/ExecutionEngine/JITLink/JITLinkTestCommon.cpp
The file was modifiedllvm/examples/Kaleidoscope/Chapter6/toy.cpp
The file was modifiedllvm/lib/ExecutionEngine/ExecutionEngine.cpp
The file was modifiedllvm/examples/HowToUseJIT/HowToUseJIT.cpp
The file was modifiedllvm/lib/Support/SpecialCaseList.cpp
The file was modifiedllvm/lib/Object/WasmObjectFile.cpp
The file was modifiedllvm/lib/Target/MSP430/MSP430TargetMachine.cpp
The file was modifiedllvm/lib/Target/AMDGPU/SIMemoryLegalizer.cpp
The file was modifiedllvm/lib/Support/Z3Solver.cpp
The file was modifiedllvm/unittests/ExecutionEngine/Orc/RTDyldObjectLinkingLayerTest.cpp
The file was modifiedllvm/unittests/FuzzMutate/StrategiesTest.cpp
The file was modifiedllvm/lib/MC/WasmObjectWriter.cpp
The file was modifiedllvm/lib/IR/Verifier.cpp
The file was modifiedllvm/docs/tutorial/BuildingAJIT2.rst
The file was modifiedllvm/lib/DebugInfo/PDB/DIA/DIARawSymbol.cpp
The file was modifiedllvm/lib/Bitcode/Reader/MetadataLoader.cpp
The file was modifiedllvm/unittests/ExecutionEngine/Orc/LegacyCompileOnDemandLayerTest.cpp
The file was modifiedllvm/lib/Transforms/IPO/SampleProfile.cpp
The file was modifiedllvm/unittests/IR/CFGBuilder.cpp
The file was modifiedllvm/examples/Kaleidoscope/Chapter8/toy.cpp
The file was modifiedllvm/lib/Object/ELFObjectFile.cpp
The file was modifiedllvm/tools/llvm-jitlink/llvm-jitlink.cpp
The file was modifiedllvm/lib/CodeGen/MacroFusion.cpp
The file was modifiedllvm/lib/DebugInfo/PDB/Native/NativeSession.cpp
The file was modifiedllvm/lib/ExecutionEngine/PerfJITEvents/PerfJITEventListener.cpp
The file was modifiedllvm/examples/ExceptionDemo/ExceptionDemo.cpp
The file was modifiedllvm/lib/Target/MSP430/AsmParser/MSP430AsmParser.cpp
The file was modifiedllvm/lib/CodeGen/LiveDebugVariables.cpp
The file was modifiedllvm/lib/CodeGen/MachineScheduler.cpp
The file was modifiedllvm/unittests/ADT/FunctionRefTest.cpp
The file was modifiedllvm/include/llvm/ExecutionEngine/Orc/Core.h
The file was modifiedllvm/lib/Target/AMDGPU/SIInsertWaitcnts.cpp
The file was modifiedllvm/utils/TableGen/X86RecognizableInstr.cpp
The file was modifiedllvm/docs/tutorial/MyFirstLanguageFrontend/LangImpl09.rst
The file was modifiedllvm/lib/Transforms/Instrumentation/GCOVProfiling.cpp
The file was modifiedllvm/unittests/DebugInfo/CodeView/TypeIndexDiscoveryTest.cpp
The file was modifiedllvm/lib/LTO/ThinLTOCodeGenerator.cpp
The file was modifiedllvm/unittests/ProfileData/CoverageMappingTest.cpp
The file was modifiedllvm/docs/tutorial/BuildingAJIT1.rst
The file was modifiedllvm/lib/IR/LLVMContextImpl.cpp
The file was modifiedllvm/lib/Target/AMDGPU/SIMachineScheduler.cpp
The file was modifiedllvm/lib/Target/PowerPC/PPCTargetMachine.cpp
The file was modifiedllvm/lib/ProfileData/Coverage/CoverageMappingReader.cpp
The file was modifiedllvm/lib/Target/SystemZ/AsmParser/SystemZAsmParser.cpp
The file was modifiedllvm/lib/CodeGen/LazyMachineBlockFrequencyInfo.cpp
The file was modifiedllvm/lib/DebugInfo/PDB/Native/NativeTypeEnum.cpp
The file was modifiedllvm/include/llvm/DebugInfo/CodeView/SymbolDeserializer.h
The file was modifiedllvm/lib/Support/FileCheck.cpp
The file was modifiedllvm/utils/TableGen/CodeGenRegisters.cpp
The file was modifiedllvm/lib/LTO/LTO.cpp
The file was modifiedllvm/lib/Support/Unix/Path.inc
The file was modifiedllvm/include/llvm/ExecutionEngine/Orc/OrcRemoteTargetClient.h
The file was modifiedllvm/lib/ExecutionEngine/Orc/ObjectLinkingLayer.cpp
The file was modifiedllvm/unittests/CodeGen/GlobalISel/CSETest.cpp
The file was modifiedllvm/lib/Target/AMDGPU/GCNIterativeScheduler.cpp
The file was modifiedllvm/include/llvm/LTO/Config.h
The file was modifiedllvm/lib/TableGen/Record.cpp
The file was modifiedllvm/tools/lto/lto.cpp
The file was modifiedllvm/unittests/CodeGen/GlobalISel/GISelMITest.h
The file was modifiedllvm/lib/MC/XCOFFObjectWriter.cpp
The file was modifiedllvm/lib/Transforms/Utils/SymbolRewriter.cpp
The file was modifiedllvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldCOFF.cpp
The file was modifiedllvm/lib/IR/Function.cpp
The file was modifiedllvm/lib/Target/AMDGPU/SIMachineFunctionInfo.h
The file was modifiedllvm/include/llvm/ADT/Any.h
The file was modifiedllvm/include/llvm/DebugInfo/CodeView/TypeDeserializer.h
The file was modifiedllvm/lib/Transforms/Coroutines/CoroCleanup.cpp
The file was modifiedllvm/lib/Transforms/Instrumentation/PGOInstrumentation.cpp
The file was modifiedllvm/lib/Remarks/RemarkParser.cpp
The file was modifiedllvm/tools/llvm-exegesis/lib/BenchmarkRunner.h
The file was modifiedllvm/lib/Target/WebAssembly/AsmParser/WebAssemblyAsmParser.cpp
The file was modifiedllvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp
The file was modifiedllvm/lib/DebugInfo/PDB/PDBSymbolFunc.cpp
The file was modifiedllvm/lib/ProfileData/InstrProfReader.cpp
The file was modifiedllvm/include/llvm/Support/GenericDomTreeConstruction.h
The file was modifiedllvm/lib/CodeGen/MachineInstr.cpp
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
The file was modifiedllvm/unittests/Support/Casting.cpp
The file was modifiedllvm/lib/CodeGen/GlobalISel/CSEInfo.cpp
The file was modifiedllvm/unittests/Support/TrigramIndexTest.cpp
The file was modifiedllvm/lib/TableGen/TGParser.cpp
The file was modifiedllvm/unittests/DebugInfo/CodeView/RandomAccessVisitorTest.cpp
The file was modifiedllvm/unittests/Analysis/MemorySSATest.cpp
The file was modifiedllvm/lib/ExecutionEngine/JITLink/JITLinkGeneric.h
The file was modifiedllvm/lib/Target/AArch64/AArch64TargetMachine.cpp
The file was modifiedllvm/tools/llvm-mca/llvm-mca.cpp
The file was modifiedllvm/lib/DebugInfo/DWARF/DWARFDebugFrame.cpp
The file was modifiedllvm/lib/CodeGen/GlobalISel/RegisterBankInfo.cpp
The file was modifiedllvm/unittests/Support/YAMLIOTest.cpp
The file was modifiedllvm/unittests/IR/TimePassesTest.cpp
The file was modifiedllvm/include/llvm/Support/Registry.h
The file was modifiedllvm/lib/LTO/LTOCodeGenerator.cpp
The file was modifiedllvm/include/llvm/DebugInfo/PDB/Native/SymbolCache.h
The file was modifiedllvm/tools/llvm-mc/llvm-mc.cpp
The file was modifiedllvm/unittests/Support/FileCheckTest.cpp
The file was modifiedllvm/docs/tutorial/MyFirstLanguageFrontend/LangImpl07.rst
The file was modifiedllvm/lib/ProfileData/GCOV.cpp
The file was modifiedllvm/lib/Analysis/CallGraph.cpp
The file was modifiedllvm/examples/Kaleidoscope/BuildingAJIT/Chapter1/KaleidoscopeJIT.h
The file was modifiedllvm/lib/DebugInfo/PDB/DIA/DIASession.cpp
The file was modifiedllvm/lib/Target/Mips/MCTargetDesc/MipsELFObjectWriter.cpp
The file was modifiedllvm/lib/Support/CodeGenCoverage.cpp
The file was modifiedllvm/lib/Analysis/LegacyDivergenceAnalysis.cpp
The file was modifiedllvm/lib/Target/WebAssembly/WebAssemblyCFGSort.cpp
The file was modifiedllvm/lib/Target/WebAssembly/WebAssemblyMCInstLower.cpp
The file was modifiedllvm/lib/MC/MCStreamer.cpp
The file was modifiedllvm/tools/llvm-cov/SourceCoverageView.cpp
The file was modifiedllvm/tools/llvm-link/llvm-link.cpp
The file was modifiedllvm/examples/Kaleidoscope/Chapter9/toy.cpp
The file was modifiedllvm/lib/MCA/Stages/EntryStage.cpp
The file was modifiedllvm/lib/TableGen/SetTheory.cpp
The file was modifiedllvm/examples/Kaleidoscope/BuildingAJIT/Chapter2/toy.cpp
The file was modifiedllvm/unittests/Support/Host.cpp
The file was modifiedllvm/lib/MCA/Context.cpp
The file was modifiedllvm/tools/llc/llc.cpp
The file was modifiedllvm/lib/AsmParser/LLParser.cpp
The file was modifiedllvm/lib/Target/X86/MCTargetDesc/X86MachObjectWriter.cpp
The file was modifiedllvm/examples/Kaleidoscope/BuildingAJIT/Chapter3/toy.cpp
The file was modifiedllvm/tools/llvm-objcopy/COFF/Reader.cpp
The file was modifiedllvm/lib/Analysis/LoopAccessAnalysis.cpp
The file was modifiedllvm/tools/llvm-objcopy/ELF/Object.h
The file was modifiedllvm/tools/llvm-pdbutil/BytesOutputStyle.cpp
The file was modifiedllvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldELF.cpp
The file was modifiedllvm/lib/CodeGen/GlobalISel/Legalizer.cpp
The file was modifiedllvm/unittests/ExecutionEngine/Orc/LazyCallThroughAndReexportsTest.cpp
The file was modifiedllvm/lib/MCA/InstrBuilder.cpp
The file was modifiedllvm/unittests/ADT/STLExtrasTest.cpp
The file was modifiedllvm/lib/Transforms/Scalar/LoopUnswitch.cpp
The file was modifiedllvm/lib/Target/ARC/ARCTargetMachine.cpp
The file was modifiedllvm/docs/tutorial/MyFirstLanguageFrontend/LangImpl04.rst
The file was modifiedllvm/unittests/ExecutionEngine/Orc/QueueChannel.h
The file was modifiedllvm/include/llvm/CodeGen/GlobalISel/GISelKnownBits.h
Commit 8460301d58eebf7f9a8faa7dd13460f4eb85a9b6 by kparzysz
[Hexagon] Generate vector min/max for HVX
llvm-svn: 369014
The file was addedllvm/test/CodeGen/Hexagon/autohvx/minmax-128b.ll
The file was modifiedllvm/lib/Target/Hexagon/HexagonPatternsHVX.td
The file was modifiedllvm/lib/Target/Hexagon/HexagonISelLoweringHVX.cpp
The file was addedllvm/test/CodeGen/Hexagon/autohvx/minmax-64b.ll
The file was modifiedllvm/test/CodeGen/Hexagon/autohvx/vector-compare-128b.ll
The file was modifiedllvm/test/CodeGen/Hexagon/autohvx/vector-compare-64b.ll
The file was modifiedllvm/lib/Target/Hexagon/HexagonISelLowering.cpp
The file was modifiedllvm/lib/Target/Hexagon/HexagonISelLowering.h
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 removedclang/test/Driver/clang-offload-bundler.c.o
The file was modifiedclang/test/Driver/clang-offload-bundler.c
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 modifiedllvm/include/llvm/Support/RWMutex.h
The file was removedllvm/lib/Support/Unix/RWMutex.inc
The file was modifiedllvm/lib/Support/CMakeLists.txt
The file was removedllvm/lib/Support/RWMutex.cpp
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/lib/Target/X86/X86TargetTransformInfo.cpp
The file was modifiedllvm/test/Analysis/CostModel/X86/shuffle-extract_subvector.ll
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 addedllvm/test/ThinLTO/X86/printer.ll
The file was modifiedllvm/lib/LTO/LTOBackend.cpp
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/test/Analysis/CallGraph/non-leaf-intrinsics.ll
The file was addedllvm/test/Analysis/LazyCallGraph/callees-metadata.ll
The file was modifiedllvm/lib/Analysis/LazyCallGraph.cpp
The file was modifiedllvm/lib/Analysis/CallGraph.cpp
The file was modifiedllvm/include/llvm/Analysis/CallGraph.h
The file was modifiedllvm/include/llvm/IR/CallSite.h
The file was modifiedllvm/lib/Analysis/CGSCCPassManager.cpp
The file was addedllvm/test/Analysis/CallGraph/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/test/DebugInfo/MIR/X86/live-debug-values-restore.mir
The file was modifiedllvm/lib/CodeGen/LiveDebugValues.cpp
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/unittests/Support/MemoryBufferTest.cpp
The file was modifiedllvm/lib/Support/MemoryBuffer.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/test/CodeGen/X86/3dnow-intrinsics.ll
The file was modifiedllvm/test/CodeGen/X86/mmx-arg-passing-x86-64.ll
The file was modifiedllvm/test/CodeGen/X86/mmx-cvt.ll
The file was modifiedllvm/test/CodeGen/X86/vec_insert-7.ll
The file was modifiedllvm/lib/Target/X86/X86InstrMMX.td
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.cpp
The file was modifiedllvm/test/CodeGen/X86/vec_extract-mmx.ll
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.h
The file was modifiedllvm/test/CodeGen/X86/mmx-arith.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/lib/Sema/ParsedAttr.cpp
The file was modifiedclang/test/Sema/attr-cx2.c
The file was modifiedclang/test/SemaCXX/attr-cxx0x.cpp
The file was modifiedclang/test/Preprocessor/has_attribute.cpp
The file was modifiedclang/test/Preprocessor/has_c_attribute.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 removedclang/test/Sema/attr-cx2.c
The file was addedclang/test/Sema/attr-c2x.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 addedllvm/test/Analysis/BasicAA/ptrmask.ll
The file was modifiedllvm/lib/Analysis/BasicAliasAnalysis.cpp
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/Target/AMDGPU/SIISelLowering.cpp
The file was modifiedllvm/test/CodeGen/X86/promote-vec3.ll
The file was modifiedllvm/test/CodeGen/X86/widen_load-2.ll
The file was modifiedllvm/test/CodeGen/X86/vec_cast.ll
The file was modifiedllvm/lib/CodeGen/ValueTypes.cpp
The file was modifiedllvm/utils/TableGen/CodeGenTarget.cpp
The file was modifiedllvm/include/llvm/Support/MachineValueType.h
The file was modifiedllvm/include/llvm/CodeGen/ValueTypes.td
The file was modifiedllvm/lib/CodeGen/TargetLoweringBase.cpp
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPUISelLowering.cpp
The file was modifiedllvm/utils/TableGen/IntrinsicEmitter.cpp
The file was modifiedllvm/test/TableGen/intrinsic-varargs.td
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 removedllvm/test/Reduce/remove-global-vars.ll
The file was modifiedllvm/tools/llvm-reduce/CMakeLists.txt
The file was removedllvm/tools/llvm-reduce/deltas/ReduceGlobalVars.h
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/Inputs/remove-global-vars.py
Commit 8e987702b1e62f568dfe556ea240d4d6edeb5ad1 by kparzysz
[Hexagon] Fix instruction selection for vselect v4i8
llvm-svn: 369040
The file was modifiedllvm/lib/Target/Hexagon/HexagonISelLowering.cpp
The file was modifiedllvm/lib/Target/Hexagon/HexagonPatterns.td
The file was addedllvm/test/CodeGen/Hexagon/isel-vselect-v4i8.ll
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/Target/ARM/ARMCallLowering.cpp
The file was modifiedllvm/lib/CodeGen/ImplicitNullChecks.cpp
The file was modifiedllvm/lib/Target/ARM/Thumb1FrameLowering.cpp
The file was modifiedllvm/lib/CodeGen/SplitKit.cpp
The file was modifiedllvm/lib/Target/X86/X86InstructionSelector.cpp
The file was modifiedllvm/lib/CodeGen/LiveIntervals.cpp
The file was modifiedllvm/lib/Target/Mips/MipsSEInstrInfo.cpp
The file was modifiedllvm/lib/Target/X86/X86FastISel.cpp
The file was modifiedllvm/lib/Target/AMDGPU/SIRegisterInfo.cpp
The file was modifiedllvm/lib/Target/AMDGPU/SIWholeQuadMode.cpp
The file was modifiedllvm/lib/Target/MSP430/MSP430RegisterInfo.cpp
The file was modifiedllvm/lib/Target/Hexagon/HexagonAsmPrinter.cpp
The file was modifiedllvm/lib/Target/ARM/ARMISelDAGToDAG.cpp
The file was modifiedllvm/lib/CodeGen/SelectionDAG/InstrEmitter.cpp
The file was modifiedllvm/lib/Target/AMDGPU/GCNRegBankReassign.cpp
The file was modifiedllvm/lib/Target/X86/X86AvoidStoreForwardingBlocks.cpp
The file was modifiedllvm/lib/Target/AMDGPU/SILowerI1Copies.cpp
The file was modifiedllvm/lib/Target/Mips/Mips16ISelLowering.cpp
The file was modifiedllvm/lib/Target/Hexagon/HexagonExpandCondsets.cpp
The file was modifiedllvm/lib/CodeGen/LiveRegUnits.cpp
The file was modifiedllvm/lib/Target/ARC/ARCISelLowering.cpp
The file was modifiedllvm/lib/CodeGen/MachinePipeliner.cpp
The file was modifiedllvm/lib/CodeGen/ProcessImplicitDefs.cpp
The file was modifiedllvm/lib/Target/X86/X86RegisterInfo.cpp
The file was modifiedllvm/lib/Target/Hexagon/HexagonISelLowering.cpp
The file was modifiedllvm/lib/Target/Sparc/SparcInstrInfo.cpp
The file was modifiedllvm/lib/Target/XCore/XCoreISelLowering.cpp
The file was modifiedllvm/lib/CodeGen/MachineInstrBundle.cpp
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.cpp
The file was modifiedllvm/lib/Target/Lanai/LanaiFrameLowering.cpp
The file was modifiedllvm/lib/Target/AMDGPU/R600ISelLowering.cpp
The file was modifiedllvm/lib/Target/Hexagon/HexagonFrameLowering.cpp
The file was modifiedllvm/lib/CodeGen/MachineSink.cpp
The file was modifiedllvm/lib/Target/Mips/MipsExpandPseudo.cpp
The file was modifiedllvm/lib/CodeGen/PHIElimination.cpp
The file was modifiedllvm/lib/Target/Hexagon/HexagonGenInsert.cpp
The file was modifiedllvm/lib/CodeGen/GlobalISel/Localizer.cpp
The file was modifiedllvm/lib/CodeGen/OptimizePHIs.cpp
The file was modifiedllvm/lib/CodeGen/GlobalISel/Utils.cpp
The file was modifiedllvm/lib/CodeGen/MachineBasicBlock.cpp
The file was modifiedllvm/lib/Target/Hexagon/HexagonBitSimplify.cpp
The file was modifiedllvm/lib/CodeGen/CriticalAntiDepBreaker.cpp
The file was modifiedllvm/lib/Target/PowerPC/PPCVSXSwapRemoval.cpp
The file was modifiedllvm/lib/Target/PowerPC/PPCISelDAGToDAG.cpp
The file was modifiedllvm/lib/Target/PowerPC/PPCVSXFMAMutate.cpp
The file was modifiedllvm/lib/Target/PowerPC/PPCISelLowering.cpp
The file was modifiedllvm/lib/Target/PowerPC/PPCFrameLowering.cpp
The file was modifiedllvm/lib/CodeGen/StackMaps.cpp
The file was modifiedllvm/lib/CodeGen/RegisterCoalescer.cpp
The file was modifiedllvm/lib/Target/Mips/MipsAsmPrinter.cpp
The file was modifiedllvm/lib/Target/Mips/MipsInstructionSelector.cpp
The file was modifiedllvm/lib/Target/AMDGPU/R600InstrInfo.cpp
The file was modifiedllvm/lib/Target/Sparc/SparcRegisterInfo.cpp
The file was modifiedllvm/lib/Target/X86/X86FrameLowering.cpp
The file was modifiedllvm/lib/Target/X86/X86FixupLEAs.cpp
The file was modifiedllvm/lib/Target/AMDGPU/SIShrinkInstructions.cpp
The file was modifiedllvm/lib/Target/ARM/ARMExpandPseudoInsts.cpp
The file was modifiedllvm/lib/Target/XCore/XCoreFrameLowering.cpp
The file was modifiedllvm/lib/CodeGen/RegisterPressure.cpp
The file was modifiedllvm/lib/Target/AMDGPU/GCNRegPressure.cpp
The file was modifiedllvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
The file was modifiedllvm/lib/Target/Hexagon/HexagonNewValueJump.cpp
The file was modifiedllvm/lib/CodeGen/TargetSchedule.cpp
The file was modifiedllvm/lib/Target/Hexagon/HexagonSplitConst32AndConst64.cpp
The file was modifiedllvm/lib/Target/SystemZ/SystemZPostRewrite.cpp
The file was modifiedllvm/lib/Target/PowerPC/PPCAsmPrinter.cpp
The file was modifiedllvm/lib/Target/SystemZ/SystemZShortenInst.cpp
The file was modifiedllvm/lib/Target/SystemZ/SystemZElimCompare.cpp
The file was modifiedllvm/lib/Target/ARM/ARMInstructionSelector.cpp
The file was modifiedllvm/lib/Target/Hexagon/HexagonInstrInfo.cpp
The file was modifiedllvm/lib/Target/Hexagon/HexagonRegisterInfo.cpp
The file was modifiedllvm/lib/Target/PowerPC/PPCPreEmitPeephole.cpp
The file was modifiedllvm/lib/Target/AMDGPU/GCNHazardRecognizer.cpp
The file was modifiedllvm/lib/CodeGen/MachineCopyPropagation.cpp
The file was modifiedllvm/lib/Target/ARM/ARMConstantIslandPass.cpp
The file was modifiedllvm/lib/Target/ARM/ARMFrameLowering.cpp
The file was modifiedllvm/lib/Target/Hexagon/RDFLiveness.cpp
The file was modifiedllvm/lib/Target/X86/X86FloatingPoint.cpp
The file was modifiedllvm/lib/Target/SystemZ/SystemZFrameLowering.cpp
The file was modifiedllvm/lib/CodeGen/MachineCSE.cpp
The file was modifiedllvm/lib/CodeGen/LivePhysRegs.cpp
The file was modifiedllvm/lib/Target/ARM/ARMAsmPrinter.cpp
The file was modifiedllvm/lib/Target/AVR/AVRFrameLowering.cpp
The file was modifiedllvm/lib/CodeGen/TailDuplicator.cpp
The file was modifiedllvm/lib/Target/PowerPC/PPCMIPeephole.cpp
The file was modifiedllvm/lib/Target/Hexagon/HexagonEarlyIfConv.cpp
The file was modifiedllvm/lib/Target/X86/X86OptimizeLEAs.cpp
The file was modifiedllvm/lib/Target/X86/X86FlagsCopyLowering.cpp
The file was modifiedllvm/lib/Target/AVR/AVRExpandPseudoInsts.cpp
The file was modifiedllvm/lib/Target/Hexagon/HexagonGenMux.cpp
The file was modifiedllvm/lib/CodeGen/ExpandPostRAPseudos.cpp
The file was modifiedllvm/lib/Target/ARM/Thumb2ITBlockPass.cpp
The file was modifiedllvm/lib/Target/PowerPC/PPCFastISel.cpp
The file was modifiedllvm/lib/Target/X86/X86InsertPrefetch.cpp
The file was modifiedllvm/lib/Target/AMDGPU/R600MachineScheduler.cpp
The file was modifiedllvm/lib/Target/Hexagon/HexagonVLIWPacketizer.cpp
The file was modifiedllvm/lib/CodeGen/RegAllocFast.cpp
The file was modifiedllvm/lib/Target/PowerPC/PPCVSXCopy.cpp
The file was modifiedllvm/lib/Target/AMDGPU/SIFoldOperands.cpp
The file was modifiedllvm/lib/Target/AMDGPU/SIISelLowering.cpp
The file was modifiedllvm/lib/CodeGen/MachineScheduler.cpp
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPUAsmPrinter.cpp
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPURegisterBankInfo.cpp
The file was modifiedllvm/lib/Target/X86/X86CmovConversion.cpp
The file was modifiedllvm/lib/CodeGen/RegisterScavenging.cpp
The file was modifiedllvm/lib/Target/BPF/BPFMISimplifyPatchable.cpp
The file was modifiedllvm/lib/Target/NVPTX/NVPTXAsmPrinter.cpp
The file was modifiedllvm/lib/Target/PowerPC/PPCInstrInfo.cpp
The file was modifiedllvm/lib/Target/X86/X86SpeculativeLoadHardening.cpp
The file was modifiedllvm/lib/Target/Mips/Mips16ISelDAGToDAG.cpp
The file was modifiedllvm/lib/CodeGen/DeadMachineInstructionElim.cpp
The file was modifiedllvm/lib/Target/BPF/BPFMIPeephole.cpp
The file was modifiedllvm/lib/Target/X86/X86WinAllocaExpander.cpp
The file was modifiedllvm/lib/Target/ARC/ARCOptAddrMode.cpp
The file was modifiedllvm/lib/Target/AMDGPU/SIOptimizeExecMaskingPreRA.cpp
The file was modifiedllvm/lib/CodeGen/BreakFalseDeps.cpp
The file was modifiedllvm/lib/Target/X86/X86FixupBWInsts.cpp
The file was modifiedllvm/lib/Target/AMDGPU/SIFrameLowering.cpp
The file was modifiedllvm/lib/CodeGen/DetectDeadLanes.cpp
The file was modifiedllvm/lib/Target/Sparc/SparcISelDAGToDAG.cpp
The file was modifiedllvm/lib/CodeGen/RenameIndependentSubregs.cpp
The file was modifiedllvm/lib/Target/Hexagon/HexagonConstExtenders.cpp
The file was modifiedllvm/lib/Target/ARM/ARMFastISel.cpp
The file was modifiedllvm/lib/Target/Hexagon/HexagonHardwareLoops.cpp
The file was modifiedllvm/lib/CodeGen/LiveRangeEdit.cpp
The file was modifiedllvm/lib/Target/Hexagon/HexagonSubtarget.cpp
The file was modifiedllvm/lib/Target/Mips/MipsFastISel.cpp
The file was modifiedllvm/lib/Target/Hexagon/HexagonPeephole.cpp
The file was modifiedllvm/lib/Target/Hexagon/HexagonCopyToCombine.cpp
The file was modifiedllvm/lib/CodeGen/LiveRangeShrink.cpp
The file was modifiedllvm/lib/Target/AMDGPU/SIPreAllocateWWMRegs.cpp
The file was modifiedllvm/lib/Target/BPF/BPFISelDAGToDAG.cpp
The file was modifiedllvm/lib/CodeGen/ScheduleDAGInstrs.cpp
The file was modifiedllvm/lib/Target/X86/X86AsmPrinter.cpp
The file was modifiedllvm/lib/Target/X86/X86DomainReassignment.cpp
The file was modifiedllvm/lib/Target/SystemZ/SystemZExpandPseudo.cpp
The file was modifiedllvm/lib/Target/X86/X86FixupSetCC.cpp
The file was modifiedllvm/lib/Target/Hexagon/HexagonOptAddrMode.cpp
The file was modifiedllvm/lib/CodeGen/IfConversion.cpp
The file was modifiedllvm/lib/Target/Lanai/LanaiISelLowering.cpp
The file was modifiedllvm/lib/Target/PowerPC/PPCBranchSelector.cpp
The file was modifiedllvm/lib/Target/Mips/MipsISelDAGToDAG.cpp
The file was modifiedllvm/lib/Target/X86/X86MCInstLower.cpp
The file was modifiedllvm/lib/Target/ARM/ARMBaseInstrInfo.cpp
The file was modifiedllvm/lib/Target/AMDGPU/SIPeepholeSDWA.cpp
The file was modifiedllvm/lib/Target/X86/X86CallFrameOptimization.cpp
The file was modifiedllvm/lib/Target/XCore/XCoreRegisterInfo.cpp
The file was modifiedllvm/lib/Target/AMDGPU/R600Packetizer.cpp
The file was modifiedllvm/lib/CodeGen/LiveDebugValues.cpp
The file was modifiedllvm/lib/CodeGen/LiveRegMatrix.cpp
The file was modifiedllvm/lib/Target/ARM/A15SDOptimizer.cpp
The file was modifiedllvm/lib/Target/XCore/XCoreFrameToArgsOffsetElim.cpp
The file was modifiedllvm/lib/Target/X86/X86EvexToVex.cpp
The file was modifiedllvm/lib/Target/Mips/MicroMipsSizeReduction.cpp
The file was modifiedllvm/lib/CodeGen/MachineLICM.cpp
The file was modifiedllvm/lib/Target/AMDGPU/R600OptimizeVectorRegisters.cpp
The file was modifiedllvm/lib/Target/ARM/MLxExpansionPass.cpp
The file was modifiedllvm/lib/Target/Hexagon/HexagonConstPropagation.cpp
The file was modifiedllvm/lib/Target/Sparc/DelaySlotFiller.cpp
The file was modifiedllvm/lib/CodeGen/GlobalISel/CombinerHelper.cpp
The file was modifiedllvm/lib/CodeGen/UnreachableBlockElim.cpp
The file was modifiedllvm/lib/Target/Mips/MipsSEFrameLowering.cpp
The file was modifiedllvm/lib/Target/Hexagon/HexagonSplitDouble.cpp
The file was modifiedllvm/lib/Target/AMDGPU/SIOptimizeExecMasking.cpp
The file was modifiedllvm/lib/Target/AVR/AVRAsmPrinter.cpp
The file was modifiedllvm/lib/Target/PowerPC/PPCTLSDynamicCall.cpp
The file was modifiedllvm/lib/CodeGen/PeepholeOptimizer.cpp
The file was modifiedllvm/lib/Target/SystemZ/SystemZISelLowering.cpp
The file was modifiedllvm/lib/Target/MSP430/MSP430ISelLowering.cpp
The file was modifiedllvm/lib/Target/Hexagon/RDFGraph.cpp
The file was modifiedllvm/lib/Target/AMDGPU/SILoadStoreOptimizer.cpp
The file was modifiedllvm/lib/CodeGen/MachineOperand.cpp
The file was modifiedllvm/lib/Target/Mips/MipsSERegisterInfo.cpp
The file was modifiedllvm/lib/Target/ARM/Thumb2InstrInfo.cpp
The file was modifiedllvm/lib/Target/Hexagon/HexagonBitTracker.cpp
The file was modifiedllvm/lib/CodeGen/ShrinkWrap.cpp
The file was modifiedllvm/lib/Target/PowerPC/PPCQPXLoadSplat.cpp
The file was modifiedllvm/lib/Target/ARM/ARMLoadStoreOptimizer.cpp
The file was modifiedllvm/lib/Target/AMDGPU/SIFixSGPRCopies.cpp
The file was modifiedllvm/lib/CodeGen/MachineTraceMetrics.cpp
The file was modifiedllvm/lib/CodeGen/GlobalISel/InstructionSelect.cpp
The file was modifiedllvm/lib/Target/PowerPC/PPCRegisterInfo.cpp
The file was modifiedllvm/lib/Target/X86/X86ExpandPseudo.cpp
The file was modifiedllvm/lib/Target/SystemZ/SystemZInstrInfo.cpp
The file was modifiedllvm/lib/CodeGen/GlobalISel/CSEInfo.cpp
The file was modifiedllvm/lib/Target/Lanai/LanaiInstrInfo.cpp
The file was modifiedllvm/lib/CodeGen/LiveDebugVariables.cpp
The file was modifiedllvm/lib/CodeGen/CalcSpillWeights.cpp
The file was modifiedllvm/lib/Target/AMDGPU/SIInstrInfo.cpp
The file was modifiedllvm/lib/Target/AVR/AVRISelLowering.cpp
The file was modifiedllvm/lib/Target/AMDGPU/R600ExpandSpecialInstrs.cpp
The file was modifiedllvm/lib/Target/AMDGPU/SILowerSGPRSpills.cpp
The file was modifiedllvm/lib/CodeGen/LiveVariables.cpp
The file was modifiedllvm/lib/Target/Lanai/LanaiAsmPrinter.cpp
The file was modifiedllvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
The file was modifiedllvm/lib/Target/AMDGPU/SIAddIMGInit.cpp
The file was modifiedllvm/lib/Target/Hexagon/HexagonVExtract.cpp
The file was modifiedllvm/lib/Target/SystemZ/SystemZRegisterInfo.cpp
The file was modifiedllvm/lib/CodeGen/AggressiveAntiDepBreaker.cpp
The file was modifiedllvm/lib/CodeGen/MachineSSAUpdater.cpp
The file was modifiedllvm/lib/CodeGen/InlineSpiller.cpp
The file was modifiedllvm/lib/Target/ARM/Thumb2SizeReduction.cpp
The file was modifiedllvm/lib/Target/Hexagon/HexagonStoreWidening.cpp
The file was modifiedllvm/lib/Target/AMDGPU/GCNNSAReassign.cpp
The file was modifiedllvm/lib/Target/AMDGPU/SILowerControlFlow.cpp
The file was modifiedllvm/lib/Target/AVR/AVRRegisterInfo.cpp
The file was modifiedllvm/lib/Target/Hexagon/HexagonGenPredicate.cpp
The file was modifiedllvm/lib/Target/ARM/ThumbRegisterInfo.cpp
The file was modifiedllvm/lib/CodeGen/MachineVerifier.cpp
The file was modifiedllvm/lib/Target/AMDGPU/SIFormMemoryClauses.cpp
The file was modifiedllvm/lib/Target/Mips/MipsISelLowering.cpp
The file was modifiedllvm/lib/Target/PowerPC/PPCReduceCRLogicals.cpp
The file was modifiedllvm/lib/Target/Sparc/SparcISelLowering.cpp
The file was modifiedllvm/lib/Target/X86/X86InstrInfo.cpp
The file was modifiedllvm/lib/CodeGen/AsmPrinter/DbgEntityHistoryCalculator.cpp
The file was modifiedllvm/lib/CodeGen/TwoAddressInstructionPass.cpp
The file was modifiedllvm/lib/Target/BPF/BPFInstrInfo.cpp
The file was modifiedllvm/lib/Target/ARM/ARMISelLowering.cpp
The file was modifiedllvm/lib/Target/ARC/ARCRegisterInfo.cpp
The file was modifiedllvm/lib/Target/AMDGPU/AMDILCFGStructurizer.cpp
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.cpp
The file was modifiedllvm/lib/Target/X86/X86CallLowering.cpp
The file was modifiedllvm/lib/Target/ARM/ARMInstrInfo.cpp
The file was modifiedllvm/lib/Target/BPF/BPFISelLowering.cpp
The file was modifiedllvm/lib/Target/Mips/MipsSEISelLowering.cpp
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPUMachineCFGStructurizer.cpp
The file was modifiedllvm/lib/CodeGen/TargetInstrInfo.cpp
The file was modifiedllvm/lib/Target/BPF/BPFRegisterInfo.cpp
The file was modifiedllvm/lib/Target/Lanai/LanaiRegisterInfo.cpp
The file was modifiedllvm/lib/CodeGen/SelectionDAG/ScheduleDAGSDNodes.cpp
The file was modifiedllvm/lib/CodeGen/RegAllocGreedy.cpp
The file was modifiedllvm/lib/CodeGen/MIRCanonicalizerPass.cpp
The file was modifiedllvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp
The file was modifiedllvm/lib/Target/AMDGPU/R600ControlFlowFinalizer.cpp
The file was modifiedllvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
The file was modifiedllvm/lib/CodeGen/BranchFolding.cpp
The file was modifiedllvm/lib/Target/X86/X86SelectionDAGInfo.cpp
The file was modifiedllvm/lib/Target/Mips/MipsOptimizePICCall.cpp
The file was modifiedllvm/lib/CodeGen/EarlyIfConversion.cpp
Commit 82bfd1d25712f8c1b714614f3df559c773f08988 by gzchen
[WebAssembly] Correctly handle va_arg of zero-sized structures
Summary: D66168 passes size 0 structs indirectly, while the wasm backend
expects it to be passed directly. This causes subsequent variadic
arguments to be read incorrectly.
This diff changes it so that size 0 structs are passed directly.
Reviewers: dschuff, tlively, sbc100
Reviewed By: dschuff
Subscribers: jgravelle-google, aheejin, sunfish, cfe-commits
Tags: #clang
Differential Revision: https://reviews.llvm.org/D66255
llvm-svn: 369042
The file was modifiedclang/test/CodeGen/wasm-varargs.c
The file was modifiedclang/lib/CodeGen/TargetInfo.cpp
Commit ed399a69e2a0fc40418c3bc955e5cb2787aa93fa by rnk
[Sema] Implement DR2386 for C++17 structured binding
Allow implementations to provide complete definitions of
std::tuple_size<T>, but to omit the 'value' member to signal that T is
not tuple-like. The Microsoft standard library implements
std::tuple_size<const T> this way.
If the value member exists, clang still validates that it is an ICE, but
if it does not, then the type is considered to not be tuple-like.
Fixes PR33236
Reviewers: rsmith
Differential Revision: https://reviews.llvm.org/D66040
llvm-svn: 369043
The file was modifiedclang/lib/Sema/SemaDeclCXX.cpp
The file was modifiedclang/test/CXX/drs/dr23xx.cpp
The file was modifiedclang/test/CXX/dcl.decl/dcl.decomp/p3.cpp
Commit deb49a6217dabbb709b13a43b9d4409e9d805cdf by a.bataev
Mark the test as unsupported on darwin, NFC.
The bundler may fail on darwin, mark the test as not compatible.
llvm-svn: 369044
The file was modifiedclang/test/Driver/clang-offload-bundler.c
Commit c984dde170bbe71ed40add2fe918ffbb92cbce65 by JF Bastien
Fix nm on GCC 5.1 after the C++14 move
Summary: As in D66306, fix the invocation of std::sort with
std::function by not using std::function, since it's easier to read and
is broken in libstdc++ from GCC 5.1
(see https://gcc.gnu.org/PR65942).
Reviewers: thakis
Subscribers: jkorous, mgrang, dexonsmith, rupprecht, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D66310
llvm-svn: 369045
The file was modifiedllvm/tools/llvm-nm/llvm-nm.cpp
Commit d9ebe58be2fd24e1098d2ac8927fd7b5902b49e5 by nicolasweber
gn build: Merge r369018
llvm-svn: 369046
The file was modifiedllvm/utils/gn/secondary/llvm/lib/Support/BUILD.gn
Commit 1af501c092538bb52c28ba6180b6ee0828cd155d by nicolasweber
gn build: Merge r369039
llvm-svn: 369047
The file was modifiedllvm/utils/gn/secondary/llvm/tools/llvm-reduce/BUILD.gn
Commit be8a2f75657b27ea113517c3279f0489a7f4018c by mitchphillips
[GWP-ASan] Implement stack frame compression.
Summary: This patch introduces stack frame compression to GWP-ASan. Each
stack frame is variable-length integer encoded as the difference between
frame[i] and frame[i - 1]. Furthermore, we use zig-zag encoding on the
difference to ensure that negative differences are also encoded into a
relatively small number of bytes.
Examples of what the compression looks like can be seen in
`gwp_asan/tests/compression.cpp`.
This compression can reduce the memory consumption cost of stack traces
by
~50%.
Reviewers: vlad.tsyrklevich
Reviewed By: vlad.tsyrklevich
Subscribers: mgorny, #sanitizers, llvm-commits, eugenis, morehouse
Tags: #sanitizers, #llvm
Differential Revision: https://reviews.llvm.org/D66189
llvm-svn: 369048
The file was modifiedcompiler-rt/lib/gwp_asan/guarded_pool_allocator.cpp
The file was modifiedcompiler-rt/lib/gwp_asan/guarded_pool_allocator.h
The file was addedcompiler-rt/lib/gwp_asan/stack_trace_compressor_fuzzer.cpp
The file was addedcompiler-rt/lib/gwp_asan/tests/compression.cpp
The file was addedcompiler-rt/lib/gwp_asan/stack_trace_compressor.h
The file was addedcompiler-rt/lib/gwp_asan/stack_trace_compressor.cpp
The file was modifiedcompiler-rt/lib/gwp_asan/CMakeLists.txt
Commit 9be6d7edb20b87dfa35d21e981591a9a81959344 by jdenny.ornl
[Rewrite][NFC] Add FIXMEs and tests for RemoveLineIfEmpty bug
I'd like to add these comments to warn others of problems I encountered
when trying to use `RemoveLineIfEmpty`.  I originally tried to fix the
problem, but I realized I could implement the functionality more easily
and efficiently in my calling code where I can make the simplifying
assumption that there are no prior edits to the line from which text is
being removed.  While I've lost the motivation to write a fix, which
doesn't look easy, I figure a warning to others is better than silence.
I've added a unit test to demonstrate the problem.  I don't know how to
mark it as an expected failure, so I just marked it disabled.
Reviewed By: jkorous
Differential Revision: https://reviews.llvm.org/D61466
llvm-svn: 369049
The file was modifiedclang/lib/Rewrite/Rewriter.cpp
The file was modifiedclang/include/clang/Rewrite/Core/Rewriter.h
The file was modifiedclang/unittests/Rewrite/RewriteBufferTest.cpp
Commit 79ff20428e3c4dd73ea60b630c7d36a180a36266 by asbirlea
[MemorySSA] Remove restrictive asserts.
The verification I added has overly restrictive asserts. Unreachable
blocks can have any incoming value in practice, after an update due to a
"replaceAllUses" call when the repalced entry is LiveOnEntry.
llvm-svn: 369050
The file was modifiedllvm/lib/Analysis/MemorySSA.cpp
Commit fdee340beabd13f9bb5a3203ab4cbeaec48d4d9b by mitchphillips
Remove CMake >= v3.13 target_link_options. Instead, use
set_target_properties.
llvm-svn: 369051
The file was modifiedcompiler-rt/lib/gwp_asan/CMakeLists.txt
Commit 7049b0ad4d610497939c9b2eaa72deb5f6dc989e by jingham
Stop-hooks weren't getting called on step-out. Fix that.
There was a little bit of logic in the StopInfoBreakpoint::PerformAction
that would null out the StopInfo once we had a completed plan so that
the next call to GetStopInfo would replace it with the
StopInfoThreadPlan.
But the stop-hooks check for whether a thread stopped for a reason
didn't trigger this conversion.  So I added an API to do that directly,
and then called it where before we just reset the StopInfo.
<rdar://problem/54270767>
Differential Revision: https://reviews.llvm.org/D66241
llvm-svn: 369052
The file was modifiedlldb/include/lldb/Target/Thread.h
The file was modifiedlldb/source/Target/Thread.cpp
The file was addedlldb/packages/Python/lldbsuite/test/functionalities/stop-hooks/TestStopHooks.py
The file was addedlldb/packages/Python/lldbsuite/test/functionalities/stop-hooks/Makefile
The file was addedlldb/packages/Python/lldbsuite/test/functionalities/stop-hooks/main.c
The file was modifiedlldb/source/Target/StopInfo.cpp
Commit 10ce5f88d1389a5b0a17226fc7d163fd4205b511 by eugeni.stepanov
Add missing MIR serialization text for AArch64II::MO_TAGGED.
Reviewers: pcc
Subscribers: javed.absar, kristof.beyls, hiraditya, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D66312
llvm-svn: 369053
The file was modifiedllvm/lib/Target/AArch64/AArch64InstrInfo.cpp
Commit 9106f8c87e80ee494df973f4e0eda07449ef01f2 by Jinsong Ji
[Utils][NFC] Copy bisect usage documents from commit msg into script.
Copy the message into script, so that new users won't need to dig into
commit messages to figure out how to use.
The message are copied directly from Michael's commit message in
https://reviews.llvm.org/rL214610.
llvm-svn: 369054
The file was modifiedllvm/utils/bisect
Commit 2fb4e754c64a023c16edcd69f89234300477d2f0 by mitchphillips
Guard fuzzer build behind Clang-only flags.
Should fix sanitizer buildbots and any one else who's building
compiler-rt using gcc.
llvm-svn: 369055
The file was modifiedcompiler-rt/lib/gwp_asan/CMakeLists.txt
Commit 563e25f338771638dcba905e2fc1101c19ad18f5 by Jonas Devlieghere
[Support] Re-introduce the RWMutexImpl for macOS < 10.12
In r369018, Benjamin replaced the custom RWMutex implementation with
their C++14 counterpart. Unfortunately, std::shared_timed_mutex is only
available on macOS 10.12 and later. This prevents LLVM from compiling
even on newer versions of the OS when you have an older deployment
target. This patch reintroduced the old RWMutexImpl but guards it by the
macOS availability macro.
Differential revision: https://reviews.llvm.org/rL369018
llvm-svn: 369056
The file was modifiedllvm/include/llvm/Support/RWMutex.h
Commit 5c38ca35346f3aa8c04dc827a403c6ec605d8acc by listmail
[SDAG] Minor code cleanup/standardization of atomic accessors [NFC]
llvm-svn: 369057
The file was modifiedllvm/include/llvm/CodeGen/SelectionDAGNodes.h
The file was modifiedllvm/lib/Target/ARM/ARMInstructionSelector.cpp
The file was modifiedllvm/lib/Target/AArch64/AArch64InstructionSelector.cpp
Commit 67af3fa7caa2daddddf4a9aa7cefbd33d8d51921 by hubert.reinterpretcast
[AIX] For XL, pick GCC-compatible std & default warning options
Summary: LLVM now requires C++14. For IBM XL compilers with C++14
support, this can be done with the GCC-style options. The relevant block
in the CMake file is split up into smaller parts as part of this patch
to allow the common cases to be shared.
Reviewers: jfb, jasonliu, daltenty, xingxue
Reviewed By: jfb, xingxue
Subscribers: mstorsjo, mgorny, dexonsmith, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D66256
llvm-svn: 369058
The file was modifiedllvm/cmake/modules/HandleLLVMOptions.cmake
Commit f64dcdea6da47c47be055b33f77fb161f8d2e29e by Jonas Devlieghere
Revert "[Support] Re-introduce the RWMutexImpl for macOS < 10.12"
This doesn't work (yet).
llvm-svn: 369059
The file was modifiedllvm/include/llvm/Support/RWMutex.h
Commit c26892538e84a56d0985486b273c2cfb77611292 by diegof30
[Bugpoint redesign] Output option can now print to STDOUT
Summary: This also changes all the outs() statements to errs() so the
output and progress streams don't get mixed.
This has been added because D64176 had flaky tests, which I believe were
because the reduced file was being catted into `FileCheck`, instead of
being pass from STDOUT directly.
Reviewers: chandlerc, dblaikie, xbolva00
Subscribers: llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D66314
llvm-svn: 369060
The file was modifiedllvm/test/Reduce/remove-funcs.ll
The file was modifiedllvm/tools/llvm-reduce/TestRunner.cpp
The file was modifiedllvm/tools/llvm-reduce/deltas/Delta.cpp
The file was modifiedllvm/tools/llvm-reduce/llvm-reduce.cpp
The file was modifiedllvm/tools/llvm-reduce/deltas/ReduceFunctions.cpp
The file was modifiedllvm/tools/llvm-reduce/deltas/Delta.h
Commit 0ffe687eca0ea85faca3a24ee6ef68d965383905 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
llvm-svn: 369061
The file was addedllvm/test/Reduce/Inputs/remove-global-vars.py
The file was modifiedllvm/tools/llvm-reduce/CMakeLists.txt
The file was addedllvm/tools/llvm-reduce/deltas/ReduceGlobalVars.h
The file was addedllvm/test/Reduce/remove-global-vars.ll
The file was modifiedllvm/tools/llvm-reduce/DeltaManager.h
The file was addedllvm/tools/llvm-reduce/deltas/ReduceGlobalVars.cpp
Commit 75344955fcd43b67cedec8d5b29ad3419b5aaa81 by eugeni.stepanov
Move isPointerOffset function to ValueTracking (NFC).
Summary: To be reused in MemTag sanitizer.
Reviewers: pcc, vitalybuka, ostannard
Subscribers: hiraditya, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D66165
llvm-svn: 369062
The file was modifiedllvm/include/llvm/Analysis/ValueTracking.h
The file was modifiedllvm/lib/Transforms/Scalar/MemCpyOptimizer.cpp
The file was modifiedllvm/lib/Analysis/ValueTracking.cpp
Commit 6a29ae4bde963b4f271bd9c0dfb0edd4c0de893c by diegoaat97
[clang-doc] Fix bitcode writer for access specifiers
Bitcode writer was not emitting the corresponding record for the Access
attribute of a FunctionInfo. This has been added. AS_none was being used
as the default value for any AcesssSpecifier attribute
(in FunctionInfo and MemberTypeInfo), this has been changed to AS_public
because this is the enum value that evaluates to 0. The bitcode writer
doesn't write values that are 0 so if an attribute was set to AS_public,
this value is not written and after reading the bitcode it would have
the default value which is AS_none. This is why the default value is now
AS_public.
Differential Revision: https://reviews.llvm.org/D66151
llvm-svn: 369063
The file was modifiedclang-tools-extra/clang-doc/Serialize.cpp
The file was modifiedclang-tools-extra/unittests/clang-doc/HTMLGeneratorTest.cpp
The file was modifiedclang-tools-extra/clang-doc/BitcodeWriter.cpp
The file was modifiedclang-tools-extra/unittests/clang-doc/BitcodeTest.cpp
The file was modifiedclang-tools-extra/unittests/clang-doc/MDGeneratorTest.cpp
The file was modifiedclang-tools-extra/unittests/clang-doc/YAMLGeneratorTest.cpp
The file was modifiedclang-tools-extra/clang-doc/Representation.h
The file was modifiedclang-tools-extra/unittests/clang-doc/SerializeTest.cpp
The file was modifiedclang-tools-extra/test/clang-doc/single-file-public.cpp
The file was modifiedclang-tools-extra/clang-doc/YAMLGenerator.cpp
Commit 6d6babf7457c8128072cb23f079123fa76cafc5b by Jonas Devlieghere
[Support] Re-introduce the RWMutexImpl for macOS < 10.12
In r369018, Benjamin replaced the custom RWMutex implementation with
their C++14 counterpart. Unfortunately, std::shared_timed_mutex is only
available on macOS 10.12 and later. This prevents LLVM from compiling
even on newer versions of the OS when you have an older deployment
target. This patch reintroduced the old RWMutexImpl but guards it by the
macOS availability macro.
Differential revision: https://reviews.llvm.org/D66313
llvm-svn: 369064
The file was modifiedllvm/lib/Support/CMakeLists.txt
The file was addedllvm/lib/Support/RWMutex.cpp
The file was modifiedllvm/include/llvm/Support/RWMutex.h
Commit 77dc05b945ade395baebcc04dd58792fcfc229fb by diegoaat97
[clang-doc] Fix use of source-root flag
The value, if any, of --source-root flag was not being used. This has
been fixed and the logic was moved to the ClangDocContext contructor.
Differential revision: https://reviews.llvm.org/D66268
llvm-svn: 369065
The file was modifiedclang-tools-extra/clang-doc/Representation.cpp
The file was modifiedclang-tools-extra/clang-doc/tool/ClangDocMain.cpp
Commit 27954c36443d5ae688b91e90d6741b9f8a275c2a by dlj
[NewPM][PassInstrumentation] Fix test added in r369024.
llvm-lto2 doesn't treat "-" as stdout, so the test added in r369024
creates a file named "-.0". This patch makes the test look more like
other tests that use llvm-lto2.
llvm-svn: 369066
The file was modifiedllvm/test/ThinLTO/X86/printer.ll
Commit 4be5d53a3322e558a468be709535ac06f7e2fba4 by mitchphillips
Re-instate 369051.
Looks like I accidentally reverted r369051 to the old
CMake-version-specific flag when committing 369055.
llvm-svn: 369067
The file was modifiedcompiler-rt/lib/gwp_asan/CMakeLists.txt
Commit b7bb9fb28f09f41e0bf26ba1a6c8c77799291deb by diegoaat97
[clang-doc] Sort index elements case insensitive
Implement logic to compare the references of the index case insensitive.
Differential revision: https://reviews.llvm.org/D66299
llvm-svn: 369068
The file was modifiedclang-tools-extra/clang-doc/Representation.h
The file was modifiedclang-tools-extra/unittests/clang-doc/GeneratorTest.cpp
The file was modifiedclang-tools-extra/clang-doc/Representation.cpp
Commit 9b9a3084521b7813ad94b5852a886a1b2c8493f0 by efriedma
[ARM][LowOverheadLoops] Fix generated code for "revert".
Two issues:
1. t2CMPri shouldn't use CPSR if it isn't predicated. This doesn't
really have any visible effect at the moment, but it might matter in the
future. 2. The t2CMPri generated for t2WhileLoopStart might need to use
a register that isn't LR.
My team found this because we have a patch to track register liveness
late in the pass pipeline. I'll look into upstreaming it to help catch
issues like this earlier.
Differential Revision: https://reviews.llvm.org/D66243
llvm-svn: 369069
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/revert-non-loop.mir
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/revert-while.mir
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/end-positive-offset.mir
The file was modifiedllvm/lib/Target/ARM/ARMLowOverheadLoops.cpp
Commit 0ae6006bee0e77bacce41e5a0c661ad67ea1073d by vkeles
[GlobalISel] CSEMIRBuilder: Add support for G_GEP
Summary: This patch adds G_GEP to `shouldCSEOpc` so that it can be CSEd.
It also refactors
`translateGetElementPtr` by replacing `createGenericVirtualRegister`
calls with types.
Reviewers: aditya_nandakumar, arsenm, dsanders, paquette, aemerson
Reviewed By: aditya_nandakumar
Subscribers: wdng, rovka, javed.absar, hiraditya, Petar.Avramovic,
llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D66316
llvm-svn: 369070
The file was modifiedllvm/lib/CodeGen/GlobalISel/CSEInfo.cpp
The file was modifiedllvm/lib/CodeGen/GlobalISel/MachineIRBuilder.cpp
The file was modifiedllvm/test/CodeGen/ARM/GlobalISel/arm-legalize-load-store.mir
The file was modifiedllvm/lib/CodeGen/GlobalISel/IRTranslator.cpp
The file was modifiedllvm/test/CodeGen/ARM/GlobalISel/arm-irtranslator.ll
The file was addedllvm/test/CodeGen/AArch64/GlobalISel/arm64-irtranslator-gep.ll
Commit 4660ea953e55dcbb00c0dcc077b08e03dd504df0 by mitchphillips
Moved binary off add_llvm_executable. Used add_executable instead, as
this allows a standalone compiler-rt to build, as the
add_llvm_executable build target isn't accessible in a standalone CRT
preparation.
llvm-svn: 369071
The file was modifiedcompiler-rt/lib/gwp_asan/CMakeLists.txt
Commit de0ce98abec0c2ace8e4f7cc2bc7a28fa4cff550 by Jonas Devlieghere
[DebugLine] Don't try to guess the path style
In r368879 I made an attempt to guess the path style from the files in
the line table. After some consideration I now think this is a poor
idea. This patch undoes that behavior and instead adds an optional
argument to specify the path style. This allows us to make that decision
elsewhere where we have more information. In case of LLDB based on the
Unit.
llvm-svn: 369072
The file was modifiedllvm/include/llvm/DebugInfo/DWARF/DWARFDebugLine.h
The file was modifiedlldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp
The file was modifiedllvm/lib/DebugInfo/DWARF/DWARFDebugLine.cpp
Commit 78d1323b268795aded9c6f233abcd01167d91295 by nicolasweber
gn build: Merge r369061
llvm-svn: 369073
The file was modifiedllvm/utils/gn/secondary/llvm/tools/llvm-reduce/BUILD.gn
Commit 76053297bd779ae13bd456c8ddbd405754ee39f2 by nicolasweber
gn build: Merge r369064
llvm-svn: 369074
The file was modifiedllvm/utils/gn/secondary/llvm/lib/Support/BUILD.gn
Commit ba3d595f93a45965adb4f47bfc57e28c00ba8942 by diegoaat97
[clang-doc] Serialize inherited attributes and methods
clang-doc now serializes the inherited attributes and methods, not only
the name of the base class. All inherited are tracked, if B:A and C:B,
info of A is included in C. This data is stored in attribute Bases in a
RecordInfo. Previously tracked inheritance data, stored in Parents and
VParents, hasn't been removed to reduce review load.
Differential revision: https://reviews.llvm.org/D66238
llvm-svn: 369075
The file was modifiedclang-tools-extra/unittests/clang-doc/BitcodeTest.cpp
The file was modifiedclang-tools-extra/unittests/clang-doc/ClangDocTest.h
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/BitcodeWriter.h
The file was modifiedclang-tools-extra/clang-doc/Serialize.cpp
The file was modifiedclang-tools-extra/clang-doc/Representation.cpp
The file was modifiedclang-tools-extra/clang-doc/BitcodeWriter.cpp
The file was modifiedclang-tools-extra/clang-doc/Representation.h
The file was modifiedclang-tools-extra/unittests/clang-doc/YAMLGeneratorTest.cpp
The file was modifiedclang-tools-extra/clang-doc/BitcodeReader.cpp
The file was modifiedclang-tools-extra/unittests/clang-doc/MergeTest.cpp
The file was modifiedclang-tools-extra/clang-doc/YAMLGenerator.cpp
Commit 8c90c1d2d57d02959bdc7f8cf1c53b930191dff3 by mog
[clang-tidy] Migrate objc-forbidden-subclassing to use isDerivedFrom 🚛
Summary: This migrates objc-forbidden-subclassing to `isDerivedFrom` as
it now supports matching Objective-C interface declarations.
Test Notes: Ran clang tools tests.
Reviewers: aaron.ballman, gribozavr
Reviewed By: aaron.ballman
Subscribers: xazax.hun, cfe-commits
Tags: #clang
Differential Revision: https://reviews.llvm.org/D66269
llvm-svn: 369076
The file was modifiedclang-tools-extra/clang-tidy/objc/ForbiddenSubclassingCheck.cpp
Commit 02cbdbdabfc10c436d93ee3a094b2d5b3dd1d1a1 by czhengsz
[PowerPC] add testcases for folding frame offset - NFC
llvm-svn: 369077
The file was addedllvm/test/CodeGen/PowerPC/fold-frame-offset-using-rr.mir
Commit a079a4270851667d61ecbaa20b34d0dea5bbfbfc by dabis.csaba98
[analyzer] Analysis: Silence checkers
Summary: This patch introduces a new `analyzer-config` configuration:
`-analyzer-config silence-checkers` which could be used to silence the
given checkers.
It accepts a semicolon separated list, packed into quotation marks, e.g:
`-analyzer-config
silence-checkers="core.DivideZero;core.NullDereference"`
It could be used to "disable" core checkers, so they model the analysis
as before, just if some of them are too noisy it prevents to emit
reports.
This patch also adds support for that new option to the scan-build.
Passing the option `-disable-checker core.DivideZero` to the scan-build
will be transferred to `-analyzer-config
silence-checkers=core.DivideZero`.
Reviewed By: NoQ, Szelethus
Differential Revision: https://reviews.llvm.org/D66042
llvm-svn: 369078
The file was modifiedclang/lib/Frontend/CompilerInvocation.cpp
The file was modifiedclang/lib/StaticAnalyzer/Core/AnalyzerOptions.cpp
The file was modifiedclang/lib/StaticAnalyzer/Frontend/CheckerRegistry.cpp
The file was modifiedclang/include/clang/StaticAnalyzer/Core/AnalyzerOptions.h
The file was addedclang/test/Analysis/silence-checkers-and-packages-core-div-by-zero.cpp
The file was modifiedclang-tools-extra/clang-tidy/ClangTidy.cpp
The file was modifiedclang/tools/scan-build/bin/scan-build
The file was modifiedclang/include/clang/StaticAnalyzer/Core/AnalyzerOptions.def
The file was modifiedclang/unittests/StaticAnalyzer/RegisterCustomCheckersTest.cpp
The file was modifiedclang/lib/StaticAnalyzer/Core/BugReporter.cpp
The file was modifiedclang/test/Analysis/analyzer-config.c
The file was addedclang/test/Analysis/silence-checkers-and-packages-core-all.cpp
The file was modifiedclang/include/clang/Basic/DiagnosticCommonKinds.td
Commit effc28c1398da272c2287d5fc7827a79882e0016 by mitchphillips
Disable stack_trace_compressor_fuzzer.
Should hopefully fix the remainder of the buildbot issues. Just
disabling this for now with a comment that I'm working on it. Can
actually fix the real problem when I'm at a real computer.
llvm-svn: 369079
The file was modifiedcompiler-rt/lib/gwp_asan/CMakeLists.txt
Commit ee96499a4230d5cfbb162a12e5ad8af5dbe466b9 by nicolasweber
Revert r368987, it caused PR43016.
llvm-svn: 369080
The file was modifiedllvm/test/CodeGen/AArch64/wineh_shrinkwrap.mir
The file was modifiedllvm/test/CodeGen/AArch64/arm64-alloca-frame-pointer-offset.ll
The file was modifiedllvm/test/CodeGen/AArch64/seh-finally.ll
The file was modifiedllvm/test/CodeGen/AArch64/shadow-call-stack.ll
The file was modifiedllvm/test/CodeGen/AArch64/fast-isel-sp-adjust.ll
The file was modifiedllvm/test/CodeGen/AArch64/wineh-frame5.mir
The file was modifiedllvm/lib/Target/AArch64/AArch64FrameLowering.cpp
The file was modifiedllvm/test/CodeGen/AArch64/reverse-csr-restore-seq.mir
The file was modifiedllvm/test/CodeGen/AArch64/wineh-frame7.mir
The file was modifiedllvm/test/CodeGen/AArch64/sponentry.ll
The file was modifiedllvm/test/CodeGen/AArch64/aarch64-dynamic-stack-layout.ll
The file was modifiedllvm/test/CodeGen/AArch64/cgp-usubo.ll
The file was modifiedllvm/test/CodeGen/AArch64/unfold-masked-merge-scalar-variablemask.ll
The file was modifiedllvm/test/CodeGen/AArch64/unfold-masked-merge-scalar-constmask-innerouter.ll
The file was modifiedllvm/test/CodeGen/AArch64/addsub-constant-folding.ll
The file was modifiedllvm/test/CodeGen/AArch64/regress-w29-reserved-with-fp.ll
The file was modifiedllvm/test/CodeGen/AArch64/alloca.ll
The file was modifiedllvm/test/CodeGen/AArch64/irg_sp_tagp.ll
The file was modifiedllvm/test/CodeGen/AArch64/unfold-masked-merge-scalar-constmask-interleavedbits.ll
The file was modifiedllvm/test/CodeGen/AArch64/unreachable-emergency-spill-slot.mir
The file was modifiedllvm/test/CodeGen/AArch64/unfold-masked-merge-scalar-constmask-interleavedbytehalves.ll
The file was modifiedllvm/test/CodeGen/AArch64/spill-stack-realignment.mir
The file was modifiedllvm/test/CodeGen/AArch64/sink-copy-for-shrink-wrap.ll
The file was modifiedllvm/test/CodeGen/AArch64/wineh-try-catch.ll
The file was modifiedllvm/test/CodeGen/AArch64/aarch64-vector-pcs.mir
The file was modifiedllvm/test/CodeGen/AArch64/win64_vararg.ll
The file was modifiedllvm/test/CodeGen/AArch64/unfold-masked-merge-scalar-constmask-lowhigh.ll
The file was modifiedllvm/test/CodeGen/AArch64/wineh-try-catch-realign.ll
The file was modifiedllvm/test/CodeGen/AArch64/stack-guard-vaarg.ll
The file was modifiedllvm/lib/Target/AArch64/AArch64CallingConvention.td
The file was modifiedllvm/lib/Target/AArch64/AArch64RegisterInfo.cpp
The file was modifiedllvm/test/CodeGen/AArch64/stack-guard-reassign.ll
Commit a53cce943d1627a8bf3ea64c8e1f05fb951a140d by mog
[clang-tidy] Migrate objc-super-self to use isDerivedFrom 🚛
Summary: This migrates objc-super-self to `isDerivedFrom` as it now
supports matching Objective-C interface declarations.
Test Notes: Ran clang tools tests.
Reviewers: aaron.ballman, gribozavr
Reviewed By: aaron.ballman
Subscribers: xazax.hun, cfe-commits
Tags: #clang
Differential Revision: https://reviews.llvm.org/D66270
llvm-svn: 369081
The file was modifiedclang-tools-extra/clang-tidy/objc/SuperSelfCheck.cpp
Commit a33004aca708e49bfe4d0914b9d34da6d0abe330 by ikudrin
Remove the temporary code. NFC.
That should have been done in rL368156 but somehow was missed.
llvm-svn: 369082
The file was modifiedllvm/include/llvm/DebugInfo/DWARF/DWARFDataExtractor.h
The file was modifiedllvm/lib/DebugInfo/DWARF/DWARFDataExtractor.cpp
Commit 5032c6ea080372a3222cb91e684f5723f06a9b3a by aaron.smith
[lldb-server] Disable a test on Windows until it can be fixed
llvm-svn: 369083
The file was modifiedlldb/unittests/tools/lldb-server/tests/LLGSTest.cpp
Commit 120cffccf8c3a46f6003a3b5a6b0f39130df4bd2 by craig.topper
[X86] Manually reimplement getTargetInsertSubreg in
X86DAGToDAGISel::matchBitExtract so we can call insertDAGNode on the
target constant.
This is needed to maintain the topological sort order.
Fixes PR42992.
llvm-svn: 369084
The file was addedllvm/test/CodeGen/X86/pr42992.ll
The file was modifiedllvm/lib/Target/X86/X86ISelDAGToDAG.cpp
Commit 75be1a9e5821c39f09666ef83812dbb9d0e75189 by flo
[ValueTracking] Fix recurrence detection to check both PHI operands.
Summary: Currently we fail to compute known bits for recurrences where
the first incoming value is the start value of the recurrence.
Instead of exiting the loop when the first incoming value is not the
step of the recurrence, continue to check the second incoming value.
The original code uses a loop to handle both cases, but incorrectly
exits instead of continuing.
Reviewers: lebedev.ri, spatel, nikic
Reviewed By: lebedev.ri
Subscribers: hiraditya, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D66216
llvm-svn: 369088
The file was modifiedllvm/test/Transforms/InstCombine/phi-known-bits-operand-order.ll
The file was modifiedllvm/lib/Analysis/ValueTracking.cpp
Commit b3c2f5d2ee61e4985ad14151502bb8a95760135f by ibiryukov
[clangd] Remove Bind, use C++14 lambda captures instead. NFC
llvm-svn: 369089
The file was modifiedclang-tools-extra/clangd/unittests/SyncAPI.cpp
The file was modifiedclang-tools-extra/clangd/Function.h
The file was modifiedclang-tools-extra/clangd/ClangdLSPServer.cpp
Commit 71ae2bf302cce5e50cb495689f295ae29241c82c by jvikstrom
[clangd] Added highlighting for non type templates.
Summary: Non type templates were not being highlighted. This highlights
them as TemplateParameters.
Reviewers: hokein, ilya-biryukov
Subscribers: MaskRay, jkorous, arphaman, kadircet, cfe-commits
Tags: #clang
Differential Revision: https://reviews.llvm.org/D66221
llvm-svn: 369090
The file was modifiedclang-tools-extra/clangd/unittests/SemanticHighlightingTests.cpp
The file was modifiedclang-tools-extra/clangd/SemanticHighlighting.cpp
Commit 22970d66be7856693ea56e7395909351d0885e57 by Tim Northover
AssumptionCache: remove old affected values after RAUW.
If they're left in the cache then they can't be removed efficiently when
the cache is notified to unlink a @llvm.assume call, and that can lead
to values from different functions entirely remaining there.
llvm-svn: 369091
The file was modifiedllvm/include/llvm/Analysis/AssumptionCache.h
The file was modifiedllvm/lib/Analysis/AssumptionCache.cpp
Commit 8b593480d33f8e8f5c4ec1f921a2c692bd0b7f45 by jeremy.morse.llvm
[DebugInfo] Handle complex expressions with spills in LiveDebugValues
In r369026 we disabled spill-recognition in LiveDebugValues for anything
that has a complex expression. This is because it's hard to recover the
complex expression once the spill location is baked into it.
This patch re-enables spill-recognition and slightly adjusts the
DBG_VALUE insts that LiveDebugValues tracks: instead of tracking the
last DBG_VALUE for a variable, it tracks the last _unspilt_ DBG_VALUE.
The spill-restore code is then able to access and copy the original
complex expression; but the rest of LiveDebugValues has to be aware of
the slight semantic shift, and produce a new spilt location if a spilt
location is propagated between blocks.
The test added produces an incorrect variable location (see FIXME),
which will be the subject of future work.
Differential Revision: https://reviews.llvm.org/D65368
llvm-svn: 369092
The file was modifiedllvm/test/DebugInfo/MIR/X86/live-debug-values-restore.mir
The file was modifiedllvm/lib/CodeGen/LiveDebugValues.cpp
Commit 1653ebee3f04f0591a0f31017cdd5059828ef6e5 by lewis.revill
[RISCV] Add inline asm constraint A for RISC-V
This allows the constraint A to be used in inline asm for RISC-V, which
allows an address held in a register to be used.
This patch adds the minimal amount of code required to get operands with
the right constraints to compile.
Differential Revision: https://reviews.llvm.org/D54295
llvm-svn: 369093
The file was modifiedclang/test/CodeGen/riscv-inline-asm.c
The file was modifiedclang/lib/Basic/Targets/RISCV.cpp
Commit 59894d4668530e5de9eba1b048d6c615c9459dc6 by llvm-dev
[SLPVectorizer] Silence null dereference warning. NFCI.
cppcheck + MSVC analyzer both over zealously warn that we might
dereference a null Bundle pointer - add an assertion to check for null
to silence the warning, plus its a good idea to check that we succeeded
in finding a schedule bundle anyway....
llvm-svn: 369094
The file was modifiedllvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
Commit 7abf863f761cfe487c1406e7f6e03a79b4ab3ca8 by lewis.revill
[RISCV] Lower inline asm constraint A for RISC-V
This allows arguments with the constraint A to be lowered to input nodes
for RISC-V, which implies a memory address stored in a register.
This patch adds the minimal amount of code required to get operands with
the right constraints to compile.
https://reviews.llvm.org/D54296
llvm-svn: 369095
The file was modifiedllvm/include/llvm/IR/InlineAsm.h
The file was modifiedllvm/lib/Target/RISCV/RISCVISelLowering.h
The file was modifiedllvm/test/CodeGen/RISCV/inline-asm.ll
The file was modifiedllvm/lib/Target/RISCV/RISCVISelDAGToDAG.cpp
The file was modifiedllvm/lib/Target/RISCV/RISCVISelLowering.cpp
Commit 31a47f9890911c162fc0d8efa27ad6f56d81e737 by benny.kra
Revert "[CallGraph] Refine call graph for indirect calls with !callees
metadata"
This reverts commit r369025. Crashes clang, test case is on the mailing
list.
llvm-svn: 369096
The file was removedllvm/test/Analysis/CallGraph/callees-metadata.ll
The file was removedllvm/test/Analysis/LazyCallGraph/callees-metadata.ll
The file was modifiedllvm/test/Analysis/CallGraph/non-leaf-intrinsics.ll
The file was modifiedllvm/include/llvm/Analysis/CallGraph.h
The file was modifiedllvm/include/llvm/IR/CallSite.h
The file was modifiedllvm/lib/Analysis/LazyCallGraph.cpp
The file was modifiedllvm/lib/Analysis/CallGraph.cpp
The file was modifiedllvm/lib/Analysis/CGSCCPassManager.cpp
Commit d3f774d33cd19570d6b3350bf4a2adc856090906 by lewis.revill
[RISCV] Allow parsing of bare symbols with offsets
This patch allows symbols followed by an expression for an offset to be
parsed as bare symbols.
Differential Revision: https://reviews.llvm.org/D57332
llvm-svn: 369097
The file was modifiedllvm/test/MC/RISCV/rvi-pseudos.s
The file was modifiedllvm/lib/Target/RISCV/AsmParser/RISCVAsmParser.cpp
Commit e13e836480fc8acbcef3b3fb9c4bee74083c6f6a by 1.int32
[ASTImporter] Import ctor initializers after setting flags.
Summary: Code to import "ctor initializers" at import of functions is
moved to be after the flags in the newly created function are imported.
This fixes an error when the already created but incomplete (flags are
not set) function declaration is accessed.
Reviewers: martong, shafik, a_sidorin, a.sidorin
Reviewed By: shafik
Subscribers: rnkovacs, dkrupp, Szelethus, gamesh411, cfe-commits
Tags: #clang
Differential Revision: https://reviews.llvm.org/D65935
llvm-svn: 369098
The file was modifiedclang/test/Analysis/ctu-main.cpp
The file was modifiedclang/test/Analysis/Inputs/ctu-other.cpp.externalDefMap.txt
The file was modifiedclang/lib/AST/ASTImporter.cpp
The file was modifiedclang/test/Analysis/Inputs/ctu-other.cpp
Commit b9a8ac74f14d93039509c83059e337f686616cb5 by gabor.marton
Fix typos in LibASTImporter.rst
llvm-svn: 369099
The file was modifiedclang/docs/LibASTImporter.rst
Commit 12864001a6520221d91415d68a517d2d478f3659 by ibiryukov
[clangd] Simplify code of ClangdLSPServer::onCommand
Summary: By inlining a complicated lambda into its single call-site.
Also ensure we call Reply() exactly once even if tweaks return both
ShowMessage and ApplyEdit effects.
Reviewers: hokein
Reviewed By: hokein
Subscribers: MaskRay, jkorous, arphaman, kadircet, cfe-commits
Tags: #clang
Differential Revision: https://reviews.llvm.org/D66343
llvm-svn: 369100
The file was modifiedclang-tools-extra/clangd/ClangdLSPServer.cpp
Commit 8c2c5f5045b7a91c2a69fe232a11ce8bec9a5744 by david.green
[ARM] Don't pretend we know how to generate MVE VLDn
We don't yet know how to generate these instructions for MVE. And in the
case of VLD3, we don't even have the instruction. For the moment don't
tell the vectoriser that we have VLD4, just to end up serialising the
results.
Differential Revision: https://reviews.llvm.org/D66009
llvm-svn: 369101
The file was addedllvm/test/Transforms/LoopVectorize/ARM/mve-interleaved-cost.ll
The file was modifiedllvm/lib/Target/ARM/ARMISelLowering.h
The file was modifiedllvm/lib/Target/ARM/ARMISelLowering.cpp
Commit 6a75061e36fe1998e51ba9de2702f756b6ad5a8e by bjorn.a.pettersson
[X86] Add test case for future MULFIX DAG combine folds. NFC
Add some test cases displaying the lack of DAG combine folds for
SMULFIX/UMULFIX/SMULFIXSAT when either multiplicand is undef or zero.
It seems like widening vector legalization for X86 can introduce fixed
point multiplication of undef values. So that is one way that such
operations could appear during ISel.
Multiplication with zero is probably more unlikely, and could
potentially be handled by InstCombine. But I do not think it would hurt
to do such folds in DAGCombiner.
This patch only adds the test case. The folds will be added in a follow
up patch.
llvm-svn: 369102
The file was addedllvm/test/CodeGen/X86/mulfix_combine.ll
Commit 9dddd26e31ae9a79008ee99697d52bc565a95411 by bjorn.a.pettersson
[DAGCombiner] Add simple folds for SMULFIX/UMULFIX/SMULFIXSAT
Summary: Add the following DAGCombiner folds for mulfix being one of
SMULFIX/UMULFIX/SMULFIXSAT:
(mulfix x, undef, scale) -> 0
(mulfix x, 0, scale) -> 0
Also added canonicalization of constants to RHS.
Reviewers: RKSimon, craig.topper, spatel
Reviewed By: RKSimon
Subscribers: hiraditya, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D66052
llvm-svn: 369103
The file was modifiedllvm/test/CodeGen/X86/mulfix_combine.ll
The file was modifiedllvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
The file was modifiedllvm/test/CodeGen/X86/vector-mulfix-legalize.ll
Commit 403e85cbc564be612ab3200ff99377fbba61bd92 by flo
Revert [CodeGen] Do the Simple Early Return in block-placement pass to
optimize the blocks
This reverts r368997 (git commit
2a903c0b679bae1919f9fc01f78e4bc6cff2add0)
It looks like this commit adds invalid predecessors to MBBs. The example
below fails the verifier after MachineBlockPlacement (run llc
-verify-machineinstrs):
@global.4 = external constant i8*
declare i32 @zot(...)
define i16* @snork.67() personality i8* bitcast (i32 (...)* @zot to i8*)
{ bb:
invoke void undef()
         to label %bb5 unwind label %bb4
bb4:                                              ; preds = %bb
%tmp = landingpad { i8*, i32 }
         catch i8* null
unreachable
bb5:                                              ; preds = %bb
%tmp6 = load i32, i32* null, align 4
%tmp7 = icmp eq i32 %tmp6, 0
br i1 %tmp7, label %bb14, label %bb8
bb8:                                              ; preds = %bb11, %bb5
invoke void undef()
         to label %bb9 unwind label %bb11
bb9:                                              ; preds = %bb8
%tmp10 = invoke i16* undef()
         to label %bb14 unwind label %bb11
bb11:                                             ; preds = %bb9, %bb8
%tmp12 = landingpad { i8*, i32 }
         cleanup
         catch i8* bitcast (i8** @global.4 to i8*)
%tmp13 = icmp ult i64 undef, undef
br i1 %tmp13, label %bb8, label %bb14
bb14:                                             ; preds = %bb11, %bb9,
%bb5
%tmp15 = phi i16* [ null, %bb5 ], [ null, %bb11 ], [ %tmp10, %bb9 ]
ret i16* %tmp15
}
llvm-svn: 369104
The file was modifiedllvm/lib/CodeGen/MachineBlockPlacement.cpp
The file was modifiedllvm/test/CodeGen/PowerPC/block-placement.mir
Commit 427762f03d7fd69638d4b0e530133764e82612d7 by hokein
[clangd] suppress -Wparentheses warning: suggest parentheses around ‘&&’
within ‘||’
llvm-svn: 369105
The file was modifiedclang-tools-extra/clangd/ClangdLSPServer.cpp
Commit 15fb2a73f9a09d4655ead9c99c9153fe2ea5c016 by spatel
[x86] add tests for fdiv with variable operands; NFC
D66050 proposes to change the estimate sequence, but we don't seem to
have test coverage for the common case.
llvm-svn: 369106
The file was modifiedllvm/test/CodeGen/X86/recip-fastmath.ll
Commit 5dcec7ce7ae6cd8f6b5aed646c60241a97e86214 by spatel
[x86] fix fdiv test; NFC
The test was just added with rL369106, but forgot to update the
instruction along with the test name.
llvm-svn: 369107
The file was modifiedllvm/test/CodeGen/X86/recip-fastmath.ll
Commit 6e1ac424742bcaa8fcb259676e8ae6a183a38543 by david.green
[ARM] Correct register for narrowing and widening MVE loads and stores.
The widening and narrowing MVE instructions like VLDRH.32 are only
permitted to use low tGPR registers. This means that if they are used
for a stack slot, where the register used is only decided during frame
setup, we need to be able to correctly pick a thumb1 register over a
normal GPR.
This attempts to add the required logic into eliminateFrameIndex and
rewriteT2FrameIndex, only picking the FrameReg if it is a valid register
for the operands register class, and picking a valid scratch register
for the register class.
Differential Revision: https://reviews.llvm.org/D66285
llvm-svn: 369108
The file was addedllvm/test/CodeGen/Thumb2/mve-stack.ll
The file was modifiedllvm/lib/Target/ARM/ARMBaseInstrInfo.h
The file was modifiedllvm/lib/Target/ARM/ARMBaseRegisterInfo.cpp
The file was modifiedllvm/lib/Target/ARM/Thumb2InstrInfo.cpp
Commit 6897f99314452a04be2e08058ef2f7a93053539f by maskray
[libcxxabi] __cxa_guard_require: test guard byte with != 0 instead of ==
1
llvm-svn: 369109
The file was modifiedlibcxxabi/src/cxa_guard_impl.h
Commit 9da4989c523715f2fdf7d75a8c3c4fe980fec22b by llvm-dev
[X86] Remove unused include. NFCI.
We don't use anything from TargetOptions.h directly and its included via
TargetLowering.h anyhow.
llvm-svn: 369110
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.h
Commit 3ccee5f7c4087ed119dbeba537f3df1b048a4dff by paul.walker
[AArch64InstrInfo] Stop getInstSizeInBytes returning non-zero for meta
instructions.
Summary: AArch64InstrInfo::getInstSizeInBytes is incorrectly treating
meta instructions (e.g. CFI_INSTRUCTION) as normal instructions and
giving them a size of 4.
This results in branch relaxation calculating block sizes wrong. Branch
relaxation also considers alignment and thus a single mistake can result
in later blocks being incorrectly sized even when they themselves do not
contain meta instructions.
The net result is we might not relax a branch whose destination is not
within range.
Reviewers: nickdesaulniers, peter.smith
Reviewed By: peter.smith
Subscribers: javed.absar, kristof.beyls, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D66337
llvm-svn: 369111
The file was modifiedllvm/lib/Target/AArch64/AArch64InstrInfo.cpp
The file was addedllvm/test/CodeGen/AArch64/branch-relax-block-size.mir
Commit 213edc34922afa08f8cf070017fcd398b12f15a5 by llvm-dev
[X86][SSE] Add shuffled load tests from PR16739
llvm-svn: 369112
The file was modifiedllvm/test/CodeGen/X86/load-partial.ll
Commit 4c78b7882506957febf4318978d31b5aaae7cced by Raphael Isemann
[lldb][NFC] Allow for-ranges on StringList
llvm-svn: 369113
The file was modifiedlldb/source/Utility/Args.cpp
The file was modifiedlldb/include/lldb/Utility/StringList.h
The file was modifiedlldb/unittests/Editline/EditlineTest.cpp
The file was modifiedlldb/unittests/Utility/StringListTest.cpp
The file was modifiedlldb/source/Breakpoint/WatchpointOptions.cpp
The file was modifiedlldb/source/Commands/CommandObjectApropos.cpp
The file was modifiedlldb/source/Commands/CommandObjectCommands.cpp
The file was modifiedlldb/source/Utility/StringList.cpp
The file was modifiedlldb/include/lldb/Utility/CompletionRequest.h
The file was modifiedlldb/source/Commands/CommandObjectType.cpp
The file was modifiedlldb/source/Commands/CommandObjectMultiword.cpp
Commit fa06e95898bdc1bcf8e822c0d97091ae6b65fc32 by luismarques
[RISCV] Convert registers from unsigned to Register
Only in public interfaces that have not yet been converted should there
remain registers with unsigned type.
Differential Revision: https://reviews.llvm.org/D66252
llvm-svn: 369114
The file was modifiedllvm/lib/Target/RISCV/MCTargetDesc/RISCVMCTargetDesc.cpp
The file was modifiedllvm/lib/Target/RISCV/MCTargetDesc/RISCVMCCodeEmitter.cpp
The file was modifiedllvm/lib/Target/RISCV/RISCVFrameLowering.cpp
The file was modifiedllvm/lib/Target/RISCV/RISCVMergeBaseOffset.cpp
The file was modifiedllvm/lib/Target/RISCV/Disassembler/RISCVDisassembler.cpp
The file was modifiedllvm/lib/Target/RISCV/RISCVExpandPseudoInsts.cpp
The file was modifiedllvm/lib/Target/RISCV/RISCVInstrInfo.cpp
The file was modifiedllvm/lib/Target/RISCV/RISCVInstrInfo.h
The file was modifiedllvm/lib/Target/RISCV/AsmParser/RISCVAsmParser.cpp
The file was modifiedllvm/lib/Target/RISCV/RISCVISelLowering.cpp
The file was modifiedllvm/lib/Target/RISCV/RISCVFrameLowering.h
Commit 1051f4f9bf8cf6b07f25a59503790cc8d3324b47 by llvm-dev
Revert rL369112 : [X86][SSE] Add shuffled load tests from PR16739
I left typos in this from a WIP copy - reverting and I'll recommit.
llvm-svn: 369115
The file was modifiedllvm/test/CodeGen/X86/load-partial.ll
Commit 429aa7c1e65bc748ecd085868a7b10a16ca0ff22 by llvm-dev
[X86][SSE] Add shuffled load tests from PR16739
llvm-svn: 369116
The file was modifiedllvm/test/CodeGen/X86/load-partial.ll
Commit 16244fccfe69f97d3c5d6e3ed6f336cf27c46091 by lebedev.ri
[InstCombine] Shift amount reassociation in bittest: trunc-of-shl
(PR42399)
Summary: This is continuation of D63829 /
https://bugs.llvm.org/show_bug.cgi?id=42399
I thought naive pattern would solve my issue, but nope, it involved
truncation, thus more folds needed.. This isn't really the fold i'm
interested in, i need trunc-of-lshr, but i'we decided to start with
`shl` because it's simpler.
In this case, no extra legality checks are needed:
https://rise4fun.com/Alive/CAb
We should be careful about not increasing instruction count, since we
need to produce `zext` because `and` is done in wider type.
Reviewers: spatel, nikic, xbolva00
Reviewed By: spatel
Subscribers: hiraditya, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D66057
llvm-svn: 369117
The file was modifiedllvm/include/llvm/IR/PatternMatch.h
The file was modifiedllvm/test/Transforms/InstCombine/shift-amount-reassociation-in-bittest-with-truncation-shl.ll
The file was modifiedllvm/lib/Transforms/InstCombine/InstCombineCompares.cpp
Commit b782e61e471f858fcf8d67ea0efad1b2783b6632 by david.green
[ARM] MVE sext of a load is free
MVE also has some sext of loads, which will be free just as scalar
instructions are.
Differential Revision: https://reviews.llvm.org/D66008
llvm-svn: 369118
The file was modifiedllvm/lib/Target/ARM/ARMTargetTransformInfo.cpp
The file was modifiedllvm/test/Analysis/CostModel/ARM/cast.ll
Commit 5f865ecf06cb8b0d2193d66379d828f94866de82 by cyndy_ishida
[TextAPI] Update reader to be supported by lib/Object
Summary: To be able to use the TextAPI/Reader for tbd file consumption
(by libObject) it gets passed a MemoryBufferRef which isn't castable to
MemoryBuffer. Updated the tests to expect that input as well.
Reviewers: ributzka, steven_wu
Reviewed By: steven_wu
Subscribers: hiraditya, dexonsmith, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D66147
llvm-svn: 369119
The file was modifiedllvm/unittests/TextAPI/TextStubV2Tests.cpp
The file was modifiedllvm/include/llvm/TextAPI/MachO/TextAPIReader.h
The file was modifiedllvm/lib/TextAPI/MachO/TextStub.cpp
The file was modifiedllvm/unittests/TextAPI/TextStubV1Tests.cpp
The file was modifiedllvm/unittests/TextAPI/TextStubV3Tests.cpp
Commit 05e9c2ac2e19d2f8353f4da01fda1215509233a5 by e.menezes
[InstCombine] Simplify pow(2.0, itofp(y)) to ldexp(1.0, y)
Simplify `pow(2.0, itofp(y))` to `ldexp(1.0, y)`.
Differential revision: https://reviews.llvm.org/D65979
llvm-svn: 369120
The file was modifiedllvm/lib/Transforms/Utils/SimplifyLibCalls.cpp
The file was modifiedllvm/test/Transforms/InstCombine/pow_fp_int.ll
Commit 2d3ebeb81395644902c8d69cce3ec19e404d840a by sidneym
[lld][Hexagon]Support HEX_32 when building shared objects
Differential Revision: https://reviews.llvm.org/D66105
llvm-svn: 369121
The file was modifiedlld/ELF/Arch/Hexagon.cpp
The file was modifiedlld/test/ELF/hexagon-shared.s
Commit f28e1128d9efb7c26adb50a1521db181a1b76f09 by sander.desmalen
Relanding r368987 [AArch64] Change location of frame-record within
callee-save area.
Changes: There was a condition for `!NeedsFrameRecord` missing in the
assert. The assert in question has changed to:
+    assert((!RPI.isPaired() || !NeedsFrameRecord || RPI.Reg2 !=
AArch64::FP ||
+            RPI.Reg1 == AArch64::LR) &&
+           "FrameRecord must be allocated together with LR");
This addresses PR43016.
llvm-svn: 369122
The file was modifiedllvm/test/CodeGen/AArch64/unfold-masked-merge-scalar-constmask-interleavedbits.ll
The file was modifiedllvm/test/CodeGen/AArch64/wineh-frame5.mir
The file was modifiedllvm/test/CodeGen/AArch64/aarch64-vector-pcs.mir
The file was modifiedllvm/test/CodeGen/AArch64/alloca.ll
The file was modifiedllvm/test/CodeGen/AArch64/aarch64-dynamic-stack-layout.ll
The file was modifiedllvm/test/CodeGen/AArch64/addsub-constant-folding.ll
The file was modifiedllvm/test/CodeGen/AArch64/win64_vararg.ll
The file was modifiedllvm/test/CodeGen/AArch64/arm64-alloca-frame-pointer-offset.ll
The file was modifiedllvm/test/CodeGen/AArch64/unfold-masked-merge-scalar-constmask-interleavedbytehalves.ll
The file was modifiedllvm/test/CodeGen/AArch64/wineh-frame7.mir
The file was modifiedllvm/test/CodeGen/AArch64/regress-w29-reserved-with-fp.ll
The file was modifiedllvm/test/CodeGen/AArch64/unfold-masked-merge-scalar-variablemask.ll
The file was modifiedllvm/test/CodeGen/AArch64/reverse-csr-restore-seq.mir
The file was modifiedllvm/test/CodeGen/AArch64/stack-guard-vaarg.ll
The file was modifiedllvm/test/CodeGen/AArch64/stack-guard-reassign.ll
The file was modifiedllvm/test/CodeGen/AArch64/sponentry.ll
The file was modifiedllvm/lib/Target/AArch64/AArch64RegisterInfo.cpp
The file was modifiedllvm/test/CodeGen/AArch64/irg_sp_tagp.ll
The file was modifiedllvm/test/CodeGen/AArch64/cgp-usubo.ll
The file was modifiedllvm/test/CodeGen/AArch64/unfold-masked-merge-scalar-constmask-lowhigh.ll
The file was modifiedllvm/test/CodeGen/AArch64/shadow-call-stack.ll
The file was modifiedllvm/test/CodeGen/AArch64/sink-copy-for-shrink-wrap.ll
The file was modifiedllvm/test/CodeGen/AArch64/wineh-try-catch.ll
The file was modifiedllvm/lib/Target/AArch64/AArch64CallingConvention.td
The file was modifiedllvm/test/CodeGen/AArch64/fast-isel-sp-adjust.ll
The file was modifiedllvm/test/CodeGen/AArch64/spill-stack-realignment.mir
The file was modifiedllvm/test/CodeGen/AArch64/unreachable-emergency-spill-slot.mir
The file was modifiedllvm/test/CodeGen/AArch64/wineh-try-catch-realign.ll
The file was modifiedllvm/test/CodeGen/AArch64/unfold-masked-merge-scalar-constmask-innerouter.ll
The file was modifiedllvm/test/CodeGen/AArch64/seh-finally.ll
The file was modifiedllvm/lib/Target/AArch64/AArch64FrameLowering.cpp
The file was modifiedllvm/test/CodeGen/AArch64/wineh_shrinkwrap.mir
Commit b46131e5c3ae4a587d48decb51204d545c7d3faa by diegoaat97
[clang-doc] Fix records in global namespace
When a Record is declared in the global namespace, clang-doc serializes
it as a child of the global namespace, so the global namespace is now
one if its parent namespaces. This namespace was not being included in
the list of namespaces of the Info causing paths to be incorrect and the
index rendered incorrectly. Affected tests have been fixed.
Differential revision: https://reviews.llvm.org/D66298
llvm-svn: 369123
The file was modifiedclang-tools-extra/unittests/clang-doc/SerializeTest.cpp
The file was modifiedclang-tools-extra/test/clang-doc/single-file-public.cpp
The file was modifiedclang-tools-extra/clang-doc/Serialize.cpp
Commit ac83aab035f2e7ea12cb623156ed4d1e8cd2816d by kparzysz
[Hexagon] Generate min/max instructions for 64-bit vectors
llvm-svn: 369124
The file was modifiedllvm/lib/Target/Hexagon/HexagonISelLowering.h
The file was addedllvm/test/CodeGen/Hexagon/isel-minmax-v64bit.ll
The file was modifiedllvm/test/CodeGen/Hexagon/isel-vselect-v4i8.ll
The file was modifiedllvm/lib/Target/Hexagon/HexagonISelLowering.cpp
The file was modifiedllvm/lib/Target/Hexagon/HexagonPatterns.td
The file was modifiedllvm/lib/Target/Hexagon/HexagonPatternsHVX.td
Commit e03f6a16317625b97e9332eed7c6875fae6b1d94 by carrot
[CodeGen/Analysis] Intrinsic llvm.assume should not block tail call
optimization
In function Analysis.cpp:isInTailCallPosition, instructions between call
and ret are checked to see if they block tail call optimization. If an
instruction is an intrinsic call, only llvm.lifetime_end is allowed and
other intrinsic functions block tail call. When compiling tcmalloc, we
found llvm.assume between a hot function call and ret, it blocks the
optimization. But llvm.assume doesn't generate instructions, it should
not block tail call.
Differential Revision: https://reviews.llvm.org/D66096
llvm-svn: 369125
The file was addedllvm/test/CodeGen/X86/tailcall-assume.ll
The file was modifiedllvm/lib/CodeGen/Analysis.cpp
Commit 3a8c6987714c3e98ab01f71a105da7cc7967b0de by llvm-dev
[X86] Alphabetize pass initialization definitions. NFCI.
llvm-svn: 369126
The file was modifiedllvm/lib/Target/X86/X86.h
Commit 144903310f58756b84144311762be1b5e0a3eec7 by spatel
[SLP] add tests for PR16739; NFC
llvm-svn: 369127
The file was modifiedllvm/test/Transforms/SLPVectorizer/X86/load-merge.ll
Commit 7ca1e0c825e6242148d14e9f5f727c98a3f3fd11 by maskray
[ELF][Hexagon] Replace R_HEXAGON_GOT with R_GOTPLT
R_GOTPLT is relative to .got.plt since D59594. Since R_HEXAGON_GOT
relocations always have 0 r_addend, they can use R_GOTPLT instead.
Reviewed By: sidneym
Differential Revision: https://reviews.llvm.org/D66274
llvm-svn: 369128
The file was modifiedlld/ELF/InputSection.cpp
The file was modifiedlld/ELF/Arch/Hexagon.cpp
The file was modifiedlld/ELF/Relocations.cpp
The file was modifiedlld/ELF/Relocations.h
Commit ea0ace75e03466d3ee32433828ecb8a780cb5925 by jordan_rose
Fix llvm-config support for CMake build-mode-style builds
At some point we and/or CMake changed our build-mode-style builds from
$LLVM_OBJ_ROOT/bin/$CMAKE_CFG_INTDIR/ to
$LLVM_OBJ_ROOT/$CMAKE_CFG_INTDIR/bin/ which is way easier to use. But
no one updated llvm-config.
https://reviews.llvm.org/D66326
llvm-svn: 369129
The file was modifiedllvm/tools/llvm-config/llvm-config.cpp
Commit 7e106445efddf4bc2f4c2cb0c798f51c6773def0 by Jonas Devlieghere
[ADT] Remove llvm::make_unique utility.
All uses of llvm::make_unique should have been replaced with
std::make_unique. This patch represents the last part of the migration
and removes the utility from LLVM.
Differential revision: https://reviews.llvm.org/D66259
llvm-svn: 369130
The file was modifiedllvm/include/llvm/ADT/STLExtras.h
The file was modifiedllvm/unittests/ADT/IteratorTest.cpp
Commit 1d254f3dae64c061ff5206366fd1dc948911b873 by vasileios.porpodas
[SLPVectorizer] Make the scheduler aware of the TreeEntry operands.
Summary: The scheduler's dependence graph gets the use-def dependencies
by accessing the operands of the instructions in a bundle. However,
buildTree_rec() may change the order of the operands in TreeEntry, and
the scheduler is currently not aware of this. This is not causing any
functional issues currently, because reordering is restricted to the
operands of a single instruction. Once we support operand reordering
across multiple TreeEntries, as shown here:
http://www.llvm.org/devmtg/2019-04/slides/Poster-Porpodas-Supernode_SLP.pdf
, the scheduler will need to get the correct operands from TreeEntry and
not from the individual instructions.
In short, this patch:
- Connects the scheduler's bundle with the corresponding TreeEntry. It
introduces new TE and Lane fields in ScheduleData.
- Moves the location where the operands of the TreeEntry are
initialized. This used to take place in newTreeEntry() setting one
operand at a time, but is now moved pre-order just before the recursion
of buildTree_rec(). This is required because the scheduler needs to
access both operands of the TreeEntry in tryScheduleBundle().
- Updates the scheduler to access the instruction operands through the
TreeEntry operands instead of accessing the instruction operands
directly.
Reviewers: ABataev, RKSimon, dtemirbulatov, Ayal, dorit, hfinkel
Reviewed By: ABataev
Subscribers: hiraditya, llvm-commits, lebedev.ri, rcorcs
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D62432
llvm-svn: 369131
The file was modifiedllvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
Commit 19301d75f086caae1a495d267f5d0264b225942d by paul.walker
Revert [AArch64InstrInfo] Stop getInstSizeInBytes returning non-zero for
meta instructions.
This reverts r369111 (git commit
3ccee5f7c4087ed119dbeba537f3df1b048a4dff)
llvm-svn: 369132
The file was modifiedllvm/lib/Target/AArch64/AArch64InstrInfo.cpp
The file was removedllvm/test/CodeGen/AArch64/branch-relax-block-size.mir
Commit 2632c677f85cba1ac2aef5d68aaf8af0f5b3c944 by paul.walker
[AArch64InstrInfo] Stop getInstSizeInBytes returning non-zero for meta
instructions.
Recommit with fixes for mac builders.
Summary: AArch64InstrInfo::getInstSizeInBytes is incorrectly treating
meta instructions (e.g. CFI_INSTRUCTION) as normal instructions and
giving them a size of 4.
This results in branch relaxation calculating block sizes wrong. Branch
relaxation also considers alignment and thus a single mistake can result
in later blocks being incorrectly sized even when they themselves do not
contain meta instructions.
The net result is we might not relax a branch whose destination is not
within range.
Reviewers: nickdesaulniers, peter.smith
Reviewed By: peter.smith
Subscribers: javed.absar, kristof.beyls, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D66337
> llvm-svn: 369111
llvm-svn: 369133
The file was addedllvm/test/CodeGen/AArch64/branch-relax-block-size.mir
The file was modifiedllvm/lib/Target/AArch64/AArch64InstrInfo.cpp
Commit 8ff1b7de4dae74f84ce7f419920434b66d62d07a by llvm-dev
[X86] combineExtractWithShuffle - handle extract(truncate(x), 0)
Eventually we need to generalize combineExtractWithShuffle to handle all
faux shuffles and handle truncate (and X86ISD::VTRUNC etc.) there, but
we're not ready yet (still creates nodes on the fly, incomplete
DemandedElts support, bad use of recursive Depth limit).
llvm-svn: 369134
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.cpp
The file was modifiedllvm/test/CodeGen/X86/vector-reduce-mul.ll
Commit c809230a69276ef5d407b6fbfe2b7809572463ba by aemerson
[AArch64][GlobalISel] Lower G_SHUFFLE_VECTOR with 1 elt src and 1 elt
mask.
Again, it's weird that these are allowed. Since lowering support was
added in r368709 we started crashing on compiling the neon intrinsics
test in the test suite. This fixes the lowering to fold the 1 elt
src/mask case into copies.
llvm-svn: 369135
The file was modifiedllvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp
The file was modifiedllvm/test/CodeGen/AArch64/GlobalISel/legalize-shuffle-vector.mir
Commit 63b78b678bc2b7739ca5b1ddffbd3d4f7a4f6270 by llvm-dev
[X86] resolveTargetShuffleInputs - add DemandedElts variant. NFCI.
Nothing calls this yet, everything still goes through the non (all)
DemandedElts wrapper.
llvm-svn: 369136
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.cpp
Commit b1cb9fd1aaf0f6d824812ba47ac1d58a6f6961e3 by gzchen
[WebAssembly] Forbid use of EM_ASM with setjmp/longjmp
Summary: We tried to support EM_ASM with setjmp/longjmp in binaryen. But
with dynamic linking thrown into the mix, the code is no longer
understandable and cannot be maintained. We also discovered more bugs in
the EM_ASM handling code.
To ensure maintainability and correctness of the binaryen code, EM_ASM
will no longer be supported with setjmp/longjmp. This is probably fine
since the support was added recently and haven't be published.
Reviewers: tlively, sbc100, jgravelle-google, kripken
Reviewed By: tlively, kripken
Subscribers: dschuff, hiraditya, aheejin, sunfish, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D66356
llvm-svn: 369137
The file was modifiedllvm/lib/Target/WebAssembly/WebAssemblyLowerEmscriptenEHSjLj.cpp
Commit 187c63f14539ee6e79d71fc212475f1ad469af22 by eugeni.stepanov
Escape % in printf format string.
Fixes branch-relax-block-size.mir on the ASan builder.
llvm-svn: 369138
The file was modifiedllvm/lib/CodeGen/BranchRelaxation.cpp
Commit 3550da79ecdbc2b2a41aa305c659a5f90eb0b3c5 by diegoaat97
[clang-doc] Redesign of generated HTML files
The new design includes a header (contains the project name), a main
section, and a footer. The main section is divided into three
subsections. Left, middle, right. The left section contains the general
index, the middle contains the info's data, and the right contains the
index for the info's content. The CSS has been updated. A flag
--project-name is added. The Attributes attribute of the TagNode struct
is now a vector of pairs because these attributes should be rendered in
the insertion order. The functions (cpp and js) that converts an Index
tree structure into HTML were slightly modified; the first ul tag
created is now a ol tag. The inner lists are still ul.
Differential Revision: https://reviews.llvm.org/D66353
llvm-svn: 369139
The file was modifiedclang-tools-extra/clang-doc/assets/index.js
The file was modifiedclang-tools-extra/clang-doc/assets/clang-doc-default-stylesheet.css
The file was modifiedclang-tools-extra/unittests/clang-doc/HTMLGeneratorTest.cpp
The file was modifiedclang-tools-extra/clang-doc/Representation.cpp
The file was modifiedclang-tools-extra/clang-doc/HTMLGenerator.cpp
The file was modifiedclang-tools-extra/docs/clang-doc.rst
The file was modifiedclang-tools-extra/clang-doc/Representation.h
The file was modifiedclang-tools-extra/clang-doc/tool/ClangDocMain.cpp
Commit 39eb2324f7ec48bd455c370dcb26ffcf9f8dfc48 by spatel
[InstCombine] canonicalize a scalar-select-of-vectors to vector select
This pattern may arise more frequently with an enhancement to SLP
vectorization suggested in PR42755:
https://bugs.llvm.org/show_bug.cgi?id=42755
...but we should handle this pattern to make things easier for the
backend either way.
For all in-tree targets that I looked at, codegen for typical vector
sizes looks better when we change to a vector select, so this is safe to
do without a cost model (in other words, as a target-independent
canonicalization).
For example, if the condition of the select is a scalar, we end up with
something like this on x86:
vpcmpgtd %xmm0, %xmm1, %xmm0
vpextrb $12, %xmm0, %eax
testb $1, %al
jne LBB0_2
## %bb.1:
vmovaps %xmm3, %xmm2
LBB0_2:
vmovaps %xmm2, %xmm0
Rather than the splat-condition variant:
vpcmpgtd %xmm0, %xmm1, %xmm0
vpshufd $255, %xmm0, %xmm0      ## xmm0 = xmm0[3,3,3,3]
vblendvps %xmm0, %xmm2, %xmm3, %xmm0
Differential Revision: https://reviews.llvm.org/D66095
llvm-svn: 369140
The file was modifiedllvm/lib/Transforms/InstCombine/InstCombineSelect.cpp
The file was modifiedllvm/test/Transforms/InstCombine/select-extractelement.ll
Commit 9bb9a0c10b21cdddea593bad20d955ced9118b19 by Lang Hames
[ORC] Remove some stray debugging output accidentally left in r368707
llvm-svn: 369141
The file was modifiedllvm/lib/ExecutionEngine/Orc/Core.cpp
Commit fe6dbadc0d53efdc34c096dd1695f23467ea6591 by jdoerfert
[Attributor] Introduce initialize calls and move code to keep attributes
concise
Summary: This patch should not change the behavior except that the added
initialize methods might indicate an optimistic fixpoint earlier. The
code movement is done to keep the attribute definitions in a single
block where it makes sense. No functional changes intended there.
Reviewers: uenoku, sstefan1
Subscribers: hiraditya, bollu, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D66258
llvm-svn: 369142
The file was modifiedllvm/lib/Transforms/IPO/Attributor.cpp
Commit 66cf87e29090737acfbaa66f15464ee2f6c93e21 by jdoerfert
[Attributor][NFC] Introduce aliases for call site attributes
Until we have call site specific liveness and/or value information there
is no need to do call site specific deduction. Though, we need the
symbols in follow up patches that make Attributor::getAAFor return a
reference.
llvm-svn: 369143
The file was modifiedllvm/lib/Transforms/IPO/Attributor.cpp
Commit 234eda563df3c207ed641c0ee550d73e10577d82 by jdoerfert
[Attributor] Towards a more structured deduction pattern
Summary: This is the first commit aiming to structure the attribute
deduction. The base idea is that we have default propagation patterns as
listed below on top of which we can add specific, e.g., context
sensitive, logic.
Deduction patterns used in this patch:
- argument states are determined from call site argument states,
   see AAAlignArgument and AAArgumentFromCallSiteArguments.
- call site argument states are determined as if they were floating
   values, see AAAlignCallSiteArgument and AAAlignFloating.
- floating value states are determined by traversing the def-use chain
   and combining the states determined for the leaves, see
   AAAlignFloating and genericValueTraversal.
- call site return states are determined from function return states,
   see AAAlignCallSiteReturned and AACallSiteReturnedFromReturned.
- function return states are determined from returned value states,
   see AAAlignReturned and AAReturnedFromReturnedValues.
Through this strategy all logic for alignment is concentrated in the
AAAlignFloating::updateImpl method.
Note: This commit works on its own but is part of a larger change that
involves "on-demand" creation of abstract attributes that will
participate in the fixpoint iteration. Without this part, we sometimes
do not have an AAAlign abstract attribute to query, loosing information
we determined before. All tests have appropriate FIXMEs and the
information will be recovered once we added all parts.
Reviewers: sstefan1, uenoku
Subscribers: hiraditya, bollu, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D66126
llvm-svn: 369144
The file was modifiedllvm/lib/Transforms/IPO/Attributor.cpp
The file was modifiedllvm/test/Transforms/FunctionAttrs/noalias_returned.ll
The file was modifiedllvm/test/Transforms/FunctionAttrs/align.ll
Commit 2e3ed4a852d07ef2d329fbb391a8d1c5bec337d2 by richard-llvm
Stop abusing SuppressAllDiagnostics when speculatively determining
whether an expression would be valid during error recovery.
llvm-svn: 369145
The file was modifiedclang/lib/Parse/ParseExpr.cpp
The file was modifiedclang/lib/Sema/SemaOpenMP.cpp
The file was modifiedclang/lib/Sema/Sema.cpp
Commit 217ff1e445605077622fac73c56887c85fa44a6f by a.bataev
[OPENMP5.0]Diagnose global variables in lambda not marked as declare
target.
According to OpenMP 5.0, if a lambda declaration and definition appears
between a declare target directive and the matching end declare target
directive, all variables that are captured by the lambda expression must
also appear in a to clause.
llvm-svn: 369146
The file was modifiedclang/include/clang/Basic/DiagnosticSemaKinds.td
The file was modifiedclang/lib/Sema/SemaOpenMP.cpp
The file was modifiedclang/test/OpenMP/declare_target_messages.cpp
Commit f4cf3b959333f62b7a7b2d7771f7010c9d8da388 by caij2003
[ARM] push LR before __gnu_mcount_nc
Push LR register before calling __gnu_mcount_nc as it expects the value
of LR register to be the top value of the stack on ARM32.
Differential Revision: https://reviews.llvm.org/D65019
llvm-svn: 369147
The file was modifiedclang/lib/Basic/Targets/ARM.cpp
The file was modifiedllvm/include/llvm/IR/IntrinsicsARM.td
The file was modifiedllvm/lib/Target/ARM/ARMInstrThumb.td
The file was modifiedllvm/lib/Transforms/Utils/EntryExitInstrumenter.cpp
The file was modifiedllvm/lib/Target/ARM/ARMISelLowering.h
The file was modifiedllvm/lib/Target/ARM/ARMISelLowering.cpp
The file was modifiedllvm/lib/Target/ARM/ARMInstrInfo.td
The file was addedllvm/test/CodeGen/ARM/gnu_mcount_nc.ll
The file was modifiedllvm/lib/Target/ARM/ARMExpandPseudoInsts.cpp
Commit 856608c30a8b9f28333e0d1b9cacc19db6d688e8 by troyj
[Test Commit] Fix typo in diagtool.rst
Test commit after obtaining commit access.
llvm-svn: 369148
The file was modifiedclang/docs/CommandGuide/diagtool.rst
Commit 2d957cfe02a1b4c82068d1a0bf22bcffbba72a8a by caij2003
Revert "[ARM] push LR before __gnu_mcount_nc"
This reverts commit f4cf3b959333f62b7a7b2d7771f7010c9d8da388.
llvm-svn: 369149
The file was modifiedllvm/lib/Target/ARM/ARMISelLowering.cpp
The file was modifiedllvm/lib/Target/ARM/ARMExpandPseudoInsts.cpp
The file was removedllvm/test/CodeGen/ARM/gnu_mcount_nc.ll
The file was modifiedllvm/lib/Target/ARM/ARMISelLowering.h
The file was modifiedllvm/lib/Target/ARM/ARMInstrThumb.td
The file was modifiedclang/lib/Basic/Targets/ARM.cpp
The file was modifiedllvm/include/llvm/IR/IntrinsicsARM.td
The file was modifiedllvm/lib/Target/ARM/ARMInstrInfo.td
The file was modifiedllvm/lib/Transforms/Utils/EntryExitInstrumenter.cpp
Commit 8191585b36eb4963002cce43fb2e79e7fb05c3d6 by jlettner
[TSan] Don't guard #include <xpc/xpc.h>
The xpc_connection_* APIs that we are intercepting are available
starting at macOS 10.7. This is old enough so that we don't need to
guard them.
llvm-svn: 369150
The file was modifiedcompiler-rt/lib/tsan/rtl/tsan_interceptors_mac.cpp
Commit a17d1d2250448a8dcffc3c7be3a70eb24309537e by craig.topper
[X86] Use Register/MCRegister in more places in X86
This was a quick pass through some obvious places. I haven't tried the
clang-tidy check.
I also replaced the zeroes in getX86SubSuperRegister with
X86::NoRegister which is the real sentinel name.
Differential Revision: https://reviews.llvm.org/D66363
llvm-svn: 369151
The file was modifiedllvm/lib/Target/X86/X86FrameLowering.cpp
The file was modifiedllvm/lib/Target/X86/X86RegisterInfo.cpp
The file was modifiedllvm/lib/Target/X86/AsmParser/X86Operand.h
The file was modifiedllvm/lib/Target/X86/MCTargetDesc/X86MCTargetDesc.cpp
The file was modifiedllvm/lib/Target/X86/X86InstrInfo.h
The file was modifiedllvm/lib/Target/X86/X86InstrInfo.cpp
The file was modifiedllvm/lib/Target/X86/X86FixupBWInsts.cpp
The file was modifiedllvm/lib/Target/X86/MCTargetDesc/X86MCTargetDesc.h
The file was modifiedllvm/lib/Target/X86/X86FixupLEAs.cpp
Commit 250aafa2c4a1bc2395edfe8d4365545bbe56fffe by troyj
[X86] Support -mlong-double-80
Add an option group for all of the -mlong-double-* options and make
-mlong-double-80 restore the default long double behavior for X86.  The
motivations are that GNU accepts the -mlong-double-80 option and that
complex Makefiles often need a way of undoing earlier options. Prior to
this commit, if one chooses 64-bit or 128-bit long double for X86, there
is no way to undo that choice and restore the 80-bit behavior.
Differential Revision: https://reviews.llvm.org/D66055
llvm-svn: 369152
The file was modifiedclang/test/Driver/mlong-double-128.c
The file was modifiedclang/lib/Driver/ToolChains/Clang.cpp
The file was modifiedclang/include/clang/Driver/Options.td
Commit 3af3f1e8e253d93cb655388af69f4ed1722b4f51 by Jonas Devlieghere
[Utility] Reimplement RegularExpression on top of llvm::Regex
Originally I wanted to remove the RegularExpression class in Utility and
replace it with llvm::Regex. However, during that transition I noticed
that there are several places where need the regular expression string.
So instead I propose to keep the RegularExpression class and make it a
thin wrapper around llvm::Regex.
This patch also removes the workaround for empty regular expressions.
The result is that we are now (more or less) POSIX conformant.
Differential revision: https://reviews.llvm.org/D66174
llvm-svn: 369153
The file was modifiedlldb/include/lldb/Interpreter/OptionValueRegex.h
The file was modifiedlldb/include/lldb/Utility/RegularExpression.h
The file was modifiedlldb/source/Plugins/SymbolFile/DWARF/DWARFUnit.cpp
The file was modifiedlldb/source/Interpreter/OptionValueRegex.cpp
The file was addedlldb/unittests/Utility/RegularExpressionTest.cpp
The file was modifiedlldb/source/Commands/CommandObjectFrame.cpp
The file was modifiedlldb/source/Plugins/Disassembler/llvm/DisassemblerLLVMC.cpp
The file was modifiedlldb/source/Symbol/Variable.cpp
The file was modifiedlldb/source/Interpreter/CommandObjectRegexCommand.cpp
The file was modifiedlldb/include/lldb/Core/AddressResolverName.h
The file was modifiedlldb/source/Commands/CommandObjectBreakpoint.cpp
The file was modifiedlldb/unittests/Utility/CMakeLists.txt
The file was modifiedlldb/source/Target/ThreadPlanStepInRange.cpp
The file was modifiedlldb/source/Interpreter/CommandObject.cpp
The file was modifiedlldb/source/Plugins/Process/Utility/DynamicRegisterInfo.cpp
The file was modifiedlldb/source/Breakpoint/BreakpointResolverName.cpp
The file was modifiedlldb/source/Core/Disassembler.cpp
The file was modifiedlldb/source/Symbol/ObjectFile.cpp
The file was modifiedlldb/source/Plugins/StructuredData/DarwinLog/StructuredDataDarwinLog.cpp
The file was modifiedlldb/include/lldb/Breakpoint/BreakpointResolverFileRegex.h
The file was modifiedlldb/source/Host/common/Socket.cpp
The file was modifiedlldb/source/Plugins/LanguageRuntime/RenderScript/RenderScriptRuntime/RenderScriptRuntime.cpp
The file was modifiedlldb/include/lldb/Breakpoint/BreakpointResolverName.h
The file was modifiedlldb/unittests/Utility/NameMatchesTest.cpp
The file was modifiedlldb/source/Utility/RegularExpression.cpp
The file was modifiedlldb/source/Breakpoint/BreakpointResolverFileRegex.cpp
The file was modifiedlldb/source/Interpreter/OptionArgParser.cpp
The file was modifiedlldb/source/Core/AddressResolverName.cpp
Commit f4bdbea02ff507bceb2c519ce01d92ed5b7f8bde by Jonas Devlieghere
[RWMutex] Simplify availability check
Check for the actual version number for the scenarios where the macOS
version isn't available (__MAC_10_12).
llvm-svn: 369154
The file was modifiedllvm/include/llvm/Support/RWMutex.h
The file was modifiedllvm/lib/Support/RWMutex.cpp
Commit 6dedc78d9ddd117a4a39ec626c5641c698b8600e by jdoerfert
[Attributor] Add all missing attribute definitions/symbols
As a preparation to "on-demand" abstract attribute generation we need
implementations for all attributes (as they can be queried and then
created on-demand where we now fail to find one).
Reviewers: uenoku, sstefan1
Subscribers: hiraditya, bollu, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D66129
llvm-svn: 369155
The file was modifiedllvm/lib/Transforms/IPO/Attributor.cpp
Commit 8341a847a22800056aa9a7bf446f47f1a530668f by spatel
[CodeGenPrepare] fix RUN line settings
I'm not sure if this was running as expected with a broken triple.
llvm-svn: 369156
The file was modifiedllvm/test/Transforms/CodeGenPrepare/sink-shift-and-trunc.ll
Commit ac67414618df9fdc24754b05cf438f8f7568f04a by owenpiano
[clang-format] Fix the bug that joins template closer and > or >>
Also fixes a buggy test case.
See PR42404
Differential Revision: https://reviews.llvm.org/D66332
llvm-svn: 369157
The file was modifiedclang/unittests/Format/FormatTest.cpp
The file was modifiedclang/lib/Format/TokenAnnotator.cpp
Commit 17cb91853638facffe4a26fbf632c845a9830359 by jdoerfert
[CaptureTracking] Allow null to be in either icmp operand
Summary: Before we required the comparison against null to be
"canonical", hence null to be operand #1. This patch allows null to be
in either operand, similar to the handling of loaded globals that
follows.
Reviewers: sanjoy, hfinkel, aykevl, sstefan1, uenoku
Subscribers: hiraditya, bollu, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D66321
llvm-svn: 369158
The file was modifiedllvm/lib/Analysis/CaptureTracking.cpp
The file was modifiedllvm/test/Transforms/FunctionAttrs/nocapture.ll
Commit cbaf1fdea2de891bdbc49cdec89ae2077e6b9ed0 by jdoerfert
[Attributor] Fix: Make sure we set the changed flag
The flag was updated *before* we actually run the visitor callback so we
might miss updates.
llvm-svn: 369159
The file was modifiedllvm/lib/Transforms/IPO/Attributor.cpp
Commit f72d9b1c97b41fff48ad1eecbba59a29c171bff4 by jdoerfert
[Attributor] Fix: Do not partially resolve returned calls.
By partially resolving returned calls we did not record that they were
not fully resolved which caused odd behavior down the line. We could
also end up with some, but not all, returned values of the callee in the
returned values map of the caller, another odd behavior we want to
avoid.
llvm-svn: 369160
The file was modifiedllvm/lib/Transforms/IPO/Attributor.cpp
Commit 87869b398dbe525658d5ccfe2e9edd2cdf342662 by richard-llvm
[doc] Fix some minor formatting issues.
llvm-svn: 369161
The file was modifiedclang/docs/LanguageExtensions.rst
Commit eaff844fe9584be189ce66214efdf8ce1eceeb5b by efriedma
[ARM] Preserve liveness in ARMConstantIslands.
We currently don't use liveness information after this point, but it can
be useful to catch bugs using -verify-machineinstrs, and optimizations
could potentially use this information in the future.
Differential Revision: https://reviews.llvm.org/D66319
llvm-svn: 369162
The file was modifiedllvm/lib/Target/ARM/ARMConstantIslandPass.cpp
The file was modifiedllvm/test/CodeGen/ARM/constant-island-movwt.mir
Commit 97176bd2bce003353b23e554e95a52780cb0f87c by lebedev.ri
[InstCombine][NFC] Revisit tests in
reuse-constant-from-select-in-icmp.ll
llvm-svn: 369163
The file was modifiedllvm/test/Transforms/InstCombine/reuse-constant-from-select-in-icmp.ll
Commit 4a9b747bfb5579f69514a13b643684714343d4e7 by jlettner
[TSan] Add interceptors for os_unfair_lock
llvm-svn: 369164
The file was addedcompiler-rt/test/tsan/Darwin/os_unfair_lock.c
The file was modifiedcompiler-rt/lib/tsan/rtl/tsan_interceptors_mac.cpp
Commit 0c2f26d664020e50b096a927d22c1085679c022e by jlettner
Revert "[TSan] Don't guard #include <xpc/xpc.h>"
This reverts commit 8191585b36eb4963002cce43fb2e79e7fb05c3d6.
llvm-svn: 369165
The file was modifiedcompiler-rt/lib/tsan/rtl/tsan_interceptors_mac.cpp
Commit 515ad8fe4acbfcd0eb6c179a61e2acb134495843 by lebedev.ri
[InstCombine][NFC] reuse-constant-from-select-in-icmp.ll - check
branch_weights too
llvm-svn: 369166
The file was modifiedllvm/test/Transforms/InstCombine/reuse-constant-from-select-in-icmp.ll
Commit d0797ece4641580d0c2c4a60ff3d6696b657a2e5 by rupprecht
Revert [X86] SimplifyDemandedVectorElts - attempt to recombine target
shuffle using DemandedElts mask (reapplied)
This reverts r368662 (git commit
1a8d790cf5f89c1df718844f13e934e39bef6ef5)
The compile-time regression repro is in
https://bugs.llvm.org/show_bug.cgi?id=43024
llvm-svn: 369167
The file was modifiedllvm/test/CodeGen/X86/avx512-intrinsics-fast-isel.ll
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.cpp
The file was modifiedllvm/test/CodeGen/X86/vec_umulo.ll
The file was modifiedllvm/test/CodeGen/X86/vec_smulo.ll
The file was modifiedllvm/test/CodeGen/X86/shrink_vmul.ll
Commit acceedb15f52108d0e36d8090cb25fcdf34a4fc1 by spatel
[CodeGenPrepare] Fix use-after-free
If OptimizeExtractBits() encountered a shift instruction with no
operands at all, it would erase the instruction, but still return false.
This previously didn’t matter because its caller would always return
after processing the instruction, but https://reviews.llvm.org/D63233
changed the function’s caller to fall through if it returned false,
which would then cause a use-after-free detectable by ASAN.
This change makes OptimizeExtractBits return true if it removes a shift
instruction with no users, terminating processing of the instruction.
Patch by: @brentdax (Brent Royal-Gordon)
Differential Revision: https://reviews.llvm.org/D66330
llvm-svn: 369168
The file was modifiedllvm/test/Transforms/CodeGenPrepare/sink-shift-and-trunc.ll
The file was modifiedllvm/lib/CodeGen/CodeGenPrepare.cpp
Commit 7da81b5e4d2b9cb389cff28c1cc144abcf986f66 by phosek
[llvm-readobj] Fallback to PT_NOTE if file doesn't have sections
This is useful when trying to read notes from stripped files and matches
the behavior of GNU readelf and eu-readelf.
Differential Revision: https://reviews.llvm.org/D66358
llvm-svn: 369169
The file was modifiedllvm/test/tools/llvm-readobj/gnu-notes.test
The file was modifiedllvm/tools/llvm-readobj/ELFDumper.cpp
Commit 0dd9494d4701de60479d03db9012a5524a39932a by troyj
Revert "[X86] Support -mlong-double-80"
This reverts commit 250aafa2c4a1bc2395edfe8d4365545bbe56fffe. Caused
buildbot failures -- still investigating.
llvm-svn: 369170
The file was modifiedclang/include/clang/Driver/Options.td
The file was modifiedclang/test/Driver/mlong-double-128.c
The file was modifiedclang/lib/Driver/ToolChains/Clang.cpp
Commit 8e2837e549dba107f8dcac0cd33d855ffecb40e6 by Lang Hames
[ORC] Re-introduce self-dependence accidentally dropped from a unit
test.
llvm-svn: 369171
The file was modifiedllvm/unittests/ExecutionEngine/Orc/CoreAPIsTest.cpp
Commit 57ec292ab80002b8dbc3e9b201be5d4e22917449 by aemerson
[AArch64][GlobalISel] Fix an assertion during G_UNMERGE selection for
s128 types.
llvm-svn: 369172
The file was modifiedllvm/test/CodeGen/AArch64/GlobalISel/select-unmerge.mir
The file was modifiedllvm/lib/Target/AArch64/AArch64InstructionSelector.cpp
Commit 16fa8b09702378bacfa3d07081afe6b353b99e60 by caij2003
Reland "[ARM] push LR before __gnu_mcount_nc"
This relands r369147 with fixes to unit tests.
https://reviews.llvm.org/D65019
llvm-svn: 369173
The file was modifiedllvm/include/llvm/IR/IntrinsicsARM.td
The file was modifiedllvm/lib/Target/ARM/ARMInstrInfo.td
The file was modifiedllvm/lib/Target/ARM/ARMISelLowering.cpp
The file was modifiedllvm/lib/Target/ARM/ARMInstrThumb.td
The file was modifiedllvm/lib/Transforms/Utils/EntryExitInstrumenter.cpp
The file was modifiedllvm/test/Transforms/EntryExitInstrumenter/mcount.ll
The file was addedllvm/test/CodeGen/ARM/gnu_mcount_nc.ll
The file was modifiedclang/lib/Basic/Targets/ARM.cpp
The file was modifiedllvm/lib/Target/ARM/ARMExpandPseudoInsts.cpp
The file was modifiedclang/test/Frontend/gnu-mcount.c
The file was modifiedllvm/lib/Target/ARM/ARMISelLowering.h
Commit a53ad0e157d19487e2baab9e7bd02bdf1e353782 by spatel
Revert r367891 - "[InstCombine] combine mul+shl separated by zext"
This reverts commit 5dbb90bfe14ace30224239cac7c61a1422fa5144.
As noted in the post-commit thread for r367891, this can create a
multiply that is lowered to a libcall that may not exist.
We need to improve the backend decomposition for integer multiply before
trying to re-land this (if it's still worthwhile after doing the backend
work).
llvm-svn: 369174
The file was modifiedllvm/lib/Transforms/InstCombine/InstCombineShifts.cpp
The file was modifiedllvm/test/Transforms/InstCombine/shift.ll
Commit 43c8b19546ae646630898a7b0fe0a517633410de by Adrian Prantl
Add LLDB dataformatters for llvm::StringRef and
lldb_private::ConstString
These data formatters make the string value appear in Xcode's variables
view (and on the command line) without having to expand the data
structure.
Differential Revision: https://reviews.llvm.org/D66354
llvm-svn: 369175
The file was modifiedllvm/utils/lldbDataFormatters.py
Commit 0b5ecef299fd7b430ddaace420cb2f10f1846873 by phosek
[llvm-readobj] Unwrap the value first to avoid the error
This addresses the issue introduced in r369169, we need to unwrap the
value first before we can check whether it's empty. This also swaps the
two branches to put the common path first which should be NFC.
llvm-svn: 369177
The file was modifiedllvm/test/tools/llvm-readobj/gnu-notes.test
The file was modifiedllvm/tools/llvm-readobj/ELFDumper.cpp
Commit 69cef325a337bb1a498689a95dd17de4d4a074cc by Adrian Prantl
Simplify code (NFC).
llvm-svn: 369179
The file was modifiedlldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp
Commit edf504f5038b573a3e2f0eedfa7de69ec0ab9e7f by phosek
[Fuchsia] Create the VMO during initialization, not during exit
We want to avoid doing expensive work during atexit since the process
might be terminated before we can publish the VMO and write out the
symbolizer markup, so move the VMO creation to the initialization phase
and only write data during the atexit phase.
Differential Revision: https://reviews.llvm.org/D66323
llvm-svn: 369180
The file was modifiedcompiler-rt/lib/profile/InstrProfilingPlatformFuchsia.c
Commit f92109dc01b831304bedc990c41d8ea4bfd0a277 by asbirlea
[MemorySSA] Loop passes should mark MSSA preserved when available.
This patch applies only to the new pass manager. Currently, when MSSA
Analysis is available, and pass to each loop pass, it will be preserved
by that loop pass. Hence, mark the analysis preserved based on that
condition, vs the current `EnableMSSALoopDependency`. This leaves the
global flag to affect only the entry point in the loop pass manager (in
FunctionToLoopPassAdaptor).
llvm-svn: 369181
The file was modifiedllvm/lib/Transforms/Scalar/LoopInstSimplify.cpp
The file was modifiedllvm/lib/Transforms/Scalar/LoopSimplifyCFG.cpp
The file was modifiedllvm/lib/Transforms/Scalar/LICM.cpp
The file was modifiedllvm/lib/Transforms/Scalar/SimpleLoopUnswitch.cpp
The file was modifiedllvm/lib/Transforms/Scalar/LoopRotation.cpp
Commit ee6700f69766b57849f483f471387229e495e311 by diegoaat97
[clang-doc] Fix casting not working in gcc 5.4.0
An implicit cast of std::string to llvm::SmallString<> was breaking GCC
5.4.0 builder. A pair using llvm::SmallString<> now uses std::string.
Differential Revision: https://reviews.llvm.org/D66378
llvm-svn: 369182
The file was modifiedclang-tools-extra/clang-doc/HTMLGenerator.cpp
Commit c0d70bca0f9f421db80c8e96a4b5dda12de46f2f by troyj
[X86] Support -mlong-double-80
Add an option group for all of the -mlong-double-* options and make
-mlong-double-80 restore the default long double behavior for X86.  The
motivations are that GNU accepts the -mlong-double-80 option and that
complex Makefiles often need a way of undoing earlier options. Prior to
this commit, if one chooses 64-bit or 128-bit long double for X86, there
is no way to undo that choice and restore the 80-bit behavior.
Differential Revision: https://reviews.llvm.org/D66055
llvm-svn: 369183
The file was modifiedclang/test/Driver/mlong-double-128.c
The file was modifiedclang/include/clang/Driver/Options.td
The file was modifiedclang/lib/Driver/ToolChains/Clang.cpp
Commit d5d79dfd563d45eabfe9b8f5967e5ccfa5755e5c by maskray
[ELF][PPC] Fix getRelExpr for R_PPC64_REL16_HI
Fixes https://github.com/ClangBuiltLinux/linux/issues/640
R_PPC64_REL16_HI was incorrectly computed as an R_ABS relocation.
rLLD368964 made it a linker failure. Change it to use R_PC to fix the
failures.
Add ppc64-reloc-rel.s for these R_PPC64_REL* tests.
llvm-svn: 369184
The file was modifiedlld/ELF/Arch/PPC64.cpp
The file was modifiedlld/test/ELF/ppc64-relocs.s
The file was addedlld/test/ELF/ppc64-reloc-rel.s
Commit 93c7a4a47cc2f69e5bda9f80f86182d0ac29bcbd by paul.walker
Revert [AArch64InstrInfo] Stop getInstSizeInBytes returning non-zero for
meta instructions.
This reverts r369133 (git commit
2632c677f85cba1ac2aef5d68aaf8af0f5b3c944)
llvm-svn: 369185
The file was modifiedllvm/lib/Target/AArch64/AArch64InstrInfo.cpp
The file was removedllvm/test/CodeGen/AArch64/branch-relax-block-size.mir
Commit 26295676a44d1d805f8fe3f4e5c6196d3d8fd74e by paul.walker
Revert Revert [AArch64InstrInfo] Stop getInstSizeInBytes returning
non-zero for meta instructions.
This reverts r369132 (git commit
19301d75f086caae1a495d267f5d0264b225942d)
llvm-svn: 369186
The file was modifiedllvm/lib/Target/AArch64/AArch64InstrInfo.cpp
The file was addedllvm/test/CodeGen/AArch64/branch-relax-block-size.mir
Commit a560bbf7a0374a6d1b9e8b6284037778cb135f1e by maskray
[ELF] Replace local variable hasExportDynamic with
config->exportDynamic. NFC
llvm-svn: 369187
The file was modifiedlld/ELF/Driver.cpp
Commit 30cde4e2e6a5b31e8246ad3fbc30d2e37ee04798 by troyj
[circular_raw_ostream] Delegate is_displayed to contained stream
raw_ostream has an is_displayed() member function that determines if the
stream is connected to a console for display or is connected to a
file/pipe. By default, is_displayed() returns false, and derived classes
like raw_fd_ostream override it. Because circular_raw_ostream wraps
another stream, its result for is_displayed() should be the same as that
stream.
Differential Revision: https://reviews.llvm.org/D66026
llvm-svn: 369188
The file was modifiedllvm/include/llvm/Support/circular_raw_ostream.h
Commit 50166f81072c8aba7690b0a57e751393732b64e8 by grimar
[test] - Remove precomiled openbsd-phdrs.elf-x86-64 objects.
There are 2 similar openbsd-phdrs.elf-x86-64 objects committed and used
in test/Object and test/tools/llvm-objdump test cases.
There is no reason to have them, we can use YAML instead. Patch does
that.
Differential revision: https://reviews.llvm.org/D66342
llvm-svn: 369189
The file was modifiedllvm/test/tools/llvm-readobj/program-headers.test
The file was addedllvm/test/tools/llvm-objdump/openbsd-headers.test
The file was removedllvm/test/tools/llvm-objdump/X86/Inputs/openbsd-phdrs.elf-x86-64
The file was removedllvm/test/Object/Inputs/openbsd-phdrs.elf-x86-64
The file was removedllvm/test/tools/llvm-objdump/X86/openbsd-headers.test
Commit bb56755f153a83387fa6c7fa0a6d7d540da41633 by grimar
[llvm-readobj/llvm-readelf] - Improve/cleanup the error reporting API.
urrently we have the following functions for error reporting:
-- LLVM_ATTRIBUTE_NORETURN void reportError(Twine Msg); void
reportError(Error Err, StringRef Input);  void reportWarning(Twine Msg);
void reportWarning(StringRef Input, Error Err); void warn(llvm::Error
Err); void error(std::error_code EC);
---
Problems are: naming is inconsistent, arguments order is inconsistent,
some of the functions looks excessive.
After applying this patch we have:
--- LLVM_ATTRIBUTE_NORETURN void reportError(Error Err, StringRef
Input);  LLVM_ATTRIBUTE_NORETURN void reportError(std::error_code EC,
StringRef Input); void reportWarning(Error Err, StringRef Input);
---
I'd be happy to remove reportError(std::error_code EC, StringRef Input)
too, but it is used by COFF heavily.
Test cases were updated, they show an improvement introduced.
Differential revision: https://reviews.llvm.org/D66286
llvm-svn: 369190
The file was modifiedllvm/test/tools/llvm-readobj/elf-non-dynamic-in-pt-dynamic.test
The file was modifiedllvm/tools/llvm-readobj/DwarfCFIEHPrinter.h
The file was modifiedllvm/test/tools/llvm-readobj/elf-broken-dynsym-link.test
The file was modifiedllvm/test/tools/llvm-readobj/elf-malformed-pt-dynamic.test
The file was modifiedllvm/test/tools/llvm-readobj/mips-got.test
The file was modifiedllvm/test/tools/llvm-readobj/elf-dynamic-malformed.test
The file was modifiedllvm/tools/llvm-readobj/llvm-readobj.cpp
The file was modifiedllvm/test/Object/invalid.test
The file was modifiedllvm/tools/llvm-readobj/llvm-readobj.h
The file was modifiedllvm/test/tools/llvm-readobj/elf-dynamic-not-in-pt-dynamic.test
The file was modifiedllvm/tools/llvm-readobj/COFFDumper.cpp
The file was modifiedllvm/tools/llvm-readobj/ELFDumper.cpp
The file was modifiedllvm/tools/llvm-readobj/ObjDumper.cpp
The file was modifiedllvm/test/tools/llvm-readobj/hex-dump.test
The file was modifiedllvm/test/tools/llvm-readobj/note-core-ntfile-bad.test
The file was modifiedllvm/test/tools/llvm-readobj/string-dump.test
The file was modifiedllvm/tools/llvm-readobj/MachODumper.cpp
Commit b3d258fc44b588f06eb35f8e4b9a6d1fc859acec by shkzhang
[CodeGen] Do the Simple Early Return in block-placement pass to optimize
the blocks
Summary:
Fix a bug of preducessors.
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: 369191
The file was modifiedllvm/test/CodeGen/PowerPC/block-placement.mir
The file was modifiedllvm/lib/CodeGen/MachineBlockPlacement.cpp
Commit e9f28133a9fb42156a76f03e8beb85be93b793d2 by grimar
[llvm-readobj] - An attemp to fix BB after r369191.
Few BB failed with the following error:
Command Output (stderr):
--
/home/buildbots/ppc64be-clang-lnt-test/clang-ppc64be-lnt/llvm/test/tools/llvm-readobj/stack-sizes.test:263:19:
error: BADSECTION-OUT: expected string not found in input
# BADSECTION-OUT: 8 ?
                 ^
<stdin>:4:1: note: scanning from here
^
It doesn't reproduce on ubuntu/windows I have. Also, seems many of the
bots are happy too.
This slightly reorders the code to make fouts().flush() call earlier,
like it was before the r369191.
llvm-svn: 369192
The file was modifiedllvm/tools/llvm-readobj/llvm-readobj.cpp
Commit c35d4c900d209b57f8cf8fe9030ecda054488b71 by grimar
Revert r369190, r369192 ([llvm-readobj/llvm-readelf] - Improve/cleanup
the error reporting API.)
It caused multiple BB failtures:
http://lab.llvm.org:8011/builders/clang-x64-windows-msvc/builds/9743/steps/stage%201%20check/logs/stdio
http://lab.llvm.org:8011/builders/clang-cmake-x86_64-sde-avx512-linux/builds/26042/steps/ninja%20check%201/logs/FAIL%3A%20LLVM%3A%3Astack-sizes.test
llvm-svn: 369193
The file was modifiedllvm/test/tools/llvm-readobj/elf-dynamic-malformed.test
The file was modifiedllvm/test/Object/invalid.test
The file was modifiedllvm/test/tools/llvm-readobj/note-core-ntfile-bad.test
The file was modifiedllvm/tools/llvm-readobj/llvm-readobj.h
The file was modifiedllvm/tools/llvm-readobj/ObjDumper.cpp
The file was modifiedllvm/tools/llvm-readobj/MachODumper.cpp
The file was modifiedllvm/test/tools/llvm-readobj/elf-broken-dynsym-link.test
The file was modifiedllvm/test/tools/llvm-readobj/elf-dynamic-not-in-pt-dynamic.test
The file was modifiedllvm/tools/llvm-readobj/ELFDumper.cpp
The file was modifiedllvm/test/tools/llvm-readobj/elf-malformed-pt-dynamic.test
The file was modifiedllvm/tools/llvm-readobj/DwarfCFIEHPrinter.h
The file was modifiedllvm/test/tools/llvm-readobj/string-dump.test
The file was modifiedllvm/test/tools/llvm-readobj/hex-dump.test
The file was modifiedllvm/tools/llvm-readobj/llvm-readobj.cpp
The file was modifiedllvm/test/tools/llvm-readobj/mips-got.test
The file was modifiedllvm/test/tools/llvm-readobj/elf-non-dynamic-in-pt-dynamic.test
The file was modifiedllvm/tools/llvm-readobj/COFFDumper.cpp
Commit e3fb2d549b6820ab60806240cbf69e7447e71a86 by grimar
Recommit r369190 "[llvm-readobj/llvm-readelf] - Improve/cleanup the
error reporting API."
Fix: Add a `consumeError` call removed by mistake to 'printStackSize',
this should fix the "Expected<T> must be checked before access or
destruction." reported by following bot:
http://lab.llvm.org:8011/builders/clang-x64-windows-msvc/builds/9743/steps/stage%201%20check/logs/stdio
Original commit message: Currently we have the following functions for
error reporting:
LLVM_ATTRIBUTE_NORETURN void reportError(Twine Msg); void
reportError(Error Err, StringRef Input);  void reportWarning(Twine Msg);
void reportWarning(StringRef Input, Error Err); void warn(llvm::Error
Err); void error(std::error_code EC);
Problems are: naming is inconsistent, arguments order is inconsistent,
some of the functions looks excessive.
After applying this patch we have:
void reportError(Error Err, StringRef Input);  void
reportError(std::error_code EC, StringRef Input); void
reportWarning(Error Err, StringRef Input);
I'd be happy to remove reportError(std::error_code EC, StringRef Input)
too, but it is used by COFF heavily.
Test cases were updated, they show an improvement introduced.
Differential revision: https://reviews.llvm.org/D66286
llvm-svn: 369194
The file was modifiedllvm/tools/llvm-readobj/COFFDumper.cpp
The file was modifiedllvm/test/Object/invalid.test
The file was modifiedllvm/test/tools/llvm-readobj/elf-malformed-pt-dynamic.test
The file was modifiedllvm/tools/llvm-readobj/llvm-readobj.h
The file was modifiedllvm/test/tools/llvm-readobj/elf-dynamic-malformed.test
The file was modifiedllvm/tools/llvm-readobj/MachODumper.cpp
The file was modifiedllvm/test/tools/llvm-readobj/hex-dump.test
The file was modifiedllvm/test/tools/llvm-readobj/elf-dynamic-not-in-pt-dynamic.test
The file was modifiedllvm/tools/llvm-readobj/ObjDumper.cpp
The file was modifiedllvm/tools/llvm-readobj/llvm-readobj.cpp
The file was modifiedllvm/test/tools/llvm-readobj/note-core-ntfile-bad.test
The file was modifiedllvm/tools/llvm-readobj/DwarfCFIEHPrinter.h
The file was modifiedllvm/test/tools/llvm-readobj/elf-broken-dynsym-link.test
The file was modifiedllvm/test/tools/llvm-readobj/elf-non-dynamic-in-pt-dynamic.test
The file was modifiedllvm/test/tools/llvm-readobj/mips-got.test
The file was modifiedllvm/test/tools/llvm-readobj/string-dump.test
The file was modifiedllvm/tools/llvm-readobj/ELFDumper.cpp
Commit 032e1fdcd47ef98936c88aa30571c6a713179a46 by dkszelethus
[analyzer] Turn an assert into an if condition
Shocker, turns out that terminator conditions that are binary operators
aren't always logical operators.
llvm-svn: 369195
The file was modifiedclang/lib/StaticAnalyzer/Core/BugReporterVisitors.cpp
The file was modifiedclang/test/Analysis/track-control-dependency-conditions.cpp
Commit 8fd6aa5ed2d61d6ebba1185f59fe0e57fd218429 by cpplearner
[SemaDeclCXX] Allow inheriting constructor declaration to specify a
cv-qualified type
Differential Revision: https://reviews.llvm.org/D47419
llvm-svn: 369196
The file was modifiedclang/test/CXX/special/class.inhctor/elsewhere.cpp
The file was modifiedclang/lib/Sema/SemaDeclCXX.cpp
Commit e8f666f48d87e3d61ae3f68ed96d280805707a22 by lebedev.ri
[NFC][InstCombine] Some tests for 'shift amount reassoc in bit test -
trunc-of-lshr' (PR42399)
Finally, the fold i was looking forward to :)
The legality check is muddy, i doubt  i've groked the full
generalization, but it handles all the cases i care about, and can come
up with: https://rise4fun.com/Alive/26j
https://bugs.llvm.org/show_bug.cgi?id=42399
llvm-svn: 369197
The file was addedllvm/test/Transforms/InstCombine/shift-amount-reassociation-in-bittest-with-truncation-lshr.ll
Commit 37a928efd9f579126d5290f1ebb830eac053739a by Raphael Isemann
[lldb][NFC] Remove unused MaterializeInitializer and
MaterializeInternalVariable
llvm-svn: 369198
The file was modifiedlldb/source/Plugins/ExpressionParser/Clang/IRForTarget.h
The file was modifiedlldb/source/Plugins/ExpressionParser/Clang/IRForTarget.cpp
Commit a8dad5c79b64523e4c39d2ee32739f8894d40129 by yhs
[BPF] Fix bpf llvm-objdump issues.
Commit https://reviews.llvm.org/D57939 ("[DWARF] Refactor RelocVisitor
and fix computation of SHT_RELA-typed relocation entries) made a change
for relocation resolution when operating on an object file.
The change unfortunately broke BPF as given SymbolValue (S) and Addent
(A), previously relocation is resolved to
   S + A and after the change, it is resolved to
   S
This patch fixed the issue by resolving relocation correctly.
It looks not all relocation resolution reaches here and I did not trace
down exactly when. But I do find if the object file includes codes in
two different ELF sections than default ".text", the above bug will be
triggered.
This patch included a trivial two function source code to demonstrate
this issue. The relocation for .debug_loc is resolved incorrectly due to
this and llvm-objdump cannot display source annotated assembly.
Differential Revision: https://reviews.llvm.org/D66372
llvm-svn: 369199
The file was modifiedllvm/lib/Object/RelocationResolver.cpp
The file was addedllvm/test/CodeGen/BPF/objdump_two_funcs.ll
Commit 31f829f0cd4dbc00066ff0c5929f07a46e204102 by craig.topper
[X86] Add a one use check to the combineStore code that handles
v16i16->v16i8 truncate+store by extending to v16i32 and then emitting a
v16i32->v16i8 truncstore.
This prevent us from emitting a separate truncate and a truncating store
instruction.
llvm-svn: 369200
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.cpp
The file was modifiedllvm/test/CodeGen/X86/avx512-trunc.ll
Commit 8651ec6a84498f8b81a74a1f89ce60c29a2984bf by Matthew.Arsenault
TableGen: Revert changes from r369038
These aren't needed for a specific use yet, and I meant to not commit
these.
llvm-svn: 369201
The file was modifiedllvm/utils/TableGen/IntrinsicEmitter.cpp
Commit cfdc2b9bd92bb27fd8d69a47158731e03b5ad769 by Matthew.Arsenault
AMDGPU: Disambiguate v3f16 format in load/store tables
Currently the searchable tables report the number of dwords. These round
to the same number for 3 and 4 component d16 instructions. Change this
to report the number of elements so this isn't ambiguous.
llvm-svn: 369202
The file was modifiedllvm/lib/Target/AMDGPU/SIInstrInfo.td
The file was modifiedllvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.cpp
The file was modifiedllvm/lib/Target/AMDGPU/SILoadStoreOptimizer.cpp
The file was modifiedllvm/lib/Target/AMDGPU/BUFInstructions.td
The file was modifiedllvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.h
Commit 479f3bdb2c87838e5edd57e8bf7718f8307cf935 by Matthew.Arsenault
AMDGPU: Fix iterator error when lowering SI_END_CF
If the instruction is the last in the block, there is no next
instruction but the iteration still needs to look at the new block.
llvm-svn: 369203
The file was modifiedllvm/lib/Target/AMDGPU/SILowerControlFlow.cpp
The file was modifiedllvm/test/CodeGen/AMDGPU/si-lower-control-flow.mir
Commit f43106e341d16448921b2186ae225a859c7b5aa8 by craig.topper
[SelectionDAG] Add a node creation debug message to getMachineNode.
llvm-svn: 369204
The file was modifiedllvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
Commit 74168ded0399a30fe9cf4d73a28a6045cc685088 by craig.topper
[TargetLowering] Teach computeRegisterProperties to only widen
v3i16/v3f16 vectors to the next power of 2 type if that's legal.
These were recently made simple types. This restores their behavior back
to something like their EVT legalization.
We might be able to fix the code in type legalization where the assert
was failing, but I didn't investigate too much as I had already looked
at the computeRegisterProperties code during the review for v3i16/v3f16.
Most of the test changes restore the X86 codegen back to what it looked
like before the recent change. The test case in vec_setcc.ll and is a
reduced version of the reproducer from the fuzzer.
Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=16490
llvm-svn: 369205
The file was modifiedllvm/test/CodeGen/X86/vec_setcc.ll
The file was modifiedllvm/lib/CodeGen/TargetLoweringBase.cpp
The file was modifiedllvm/test/CodeGen/X86/widen_load-2.ll
The file was modifiedllvm/test/CodeGen/X86/promote-vec3.ll
The file was modifiedllvm/test/CodeGen/X86/vec_cast.ll
Commit b4806822d2d52e0e7a29ba1c15a435e2e97a82e7 by david.bolvansky
[Diagnostics] Improve -Wsizeof-pointer-div
Emit diag note with a location of pointer declaration. Revisited/added
tests.
llvm-svn: 369206
The file was modifiedclang/lib/Sema/SemaExpr.cpp
The file was modifiedclang/include/clang/Basic/DiagnosticSemaKinds.td
The file was modifiedclang/test/Sema/div-sizeof-ptr.cpp
Commit 9b957d332171d4daadf1906b18646f05366584d4 by lebedev.ri
[InstCombine] Cherry-pick NFC cleanups of
foldShiftIntoShiftInAnotherHandOfAndInICmp() from D66383
llvm-svn: 369207
The file was modifiedllvm/lib/Transforms/InstCombine/InstCombineCompares.cpp
Commit 000dfdab2dfcac736ce7ccb01029c862b338b346 by llvm-dev
[MC] MCFixup - Fix cppcheck + MSVC analyzer uninitialized member
variable warnings. NFCI.
llvm-svn: 369208
The file was modifiedllvm/include/llvm/MC/MCFixup.h
Commit 133e2d7bf83c8423f03c5fab58c7ac48dbfc9e0a by llvm-dev
[X86][SSE] Improve PACKSS shuffle tests to better match codegen from
D61129
D61129 creates 'concat + trunc' style patterns (at the 128-bit subvector
level)
llvm-svn: 369209
The file was modifiedllvm/test/CodeGen/X86/packss.ll
Commit a66edd86e27a59b78588169b060e2f032fdb16ae by llvm-dev
[X86] isTargetShuffleEquivalent - early out on illegal shuffle masks.
NFCI.
Simplifies shuffle mask comparisons by just bailing out if the shuffle
mask has any out of range values - will make an upcoming patch much
simpler.
llvm-svn: 369211
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.cpp
Commit fee2546f3f2ea003cd09970d71ff729dc8c76b3c by llvm-dev
[X86] isTargetShuffleEquivalent - add BUILD_VECTOR matching
Add similar functionality to isShuffleEquivalent - if the mask elements
don't match, try matching the BUILD_VECTOR scalars instead.
As target shuffles need to handle SM_Sentinel values, this can get a bit
tricky, so commit just adds actual mask element index handling - full
SM_SentinelZero support will be added when the need arises.
Also, enables support in matchVectorShuffleWithPACK
llvm-svn: 369212
The file was modifiedllvm/test/CodeGen/X86/packss.ll
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.cpp
Commit 63b3c56fca6d727feeb66ad5796e392ecd314443 by llvm-dev
Fix signed/unsigned comparison warning. NFCI.
llvm-svn: 369213
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.cpp
Commit 37860d524e86488e683bb04064ec34cebb4c74c3 by owenpiano
[clang-format] Fix a bug that joins template closer and =
Also fixes the documentation for SpaceBeforeAssignmentOperators.
See discussions at https://reviews.llvm.org/D66332
Differential Revision: https://reviews.llvm.org/D66384
llvm-svn: 369214
The file was modifiedclang/docs/ClangFormatStyleOptions.rst
The file was modifiedclang/unittests/Format/FormatTest.cpp
The file was modifiedclang/include/clang/Format/Format.h
The file was modifiedclang/lib/Format/TokenAnnotator.cpp
Commit 9e074c06fe08c6b2da3d119c7aa7e6724a8d13ab by craig.topper
[X86] Improve lower1BitShuffle handling for KSHIFTL on narrow vectors.
We can insert the value into a larger legal type and shift that by the
desired amount.
llvm-svn: 369215
The file was modifiedllvm/test/CodeGen/X86/kshift.ll
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.cpp
Commit c944438dfdbd6de9785f4652244e80d194f40b92 by d4m1887
[Docs] Test commit
Fixes typo - Removes extra space between last word of sentence and
period.
llvm-svn: 369216
The file was modifiedllvm/docs/TestingGuide.rst
Commit 920890e26812f808a74c60ebc14cc636dac661c1 by david.bolvansky
[Diagnostics] Diagnose misused xor as pow
Summary: Motivation:
https://twitter.com/jfbastien/status/1139298419988549632
https://twitter.com/mikemx7f/status/1139335901790625793
https://codesearch.isocpp.org/cgi-bin/cgi_ppsearch?q=10+%5E&search=Search
Reviewers: jfb, rsmith, regehr, aaron.ballman
Reviewed By: aaron.ballman
Subscribers: lebedev.ri, Quuxplusone, erik.pilkington, riccibruno,
dexonsmith, cfe-commits
Tags: #clang
Differential Revision: https://reviews.llvm.org/D63423
llvm-svn: 369217
The file was addedclang/test/SemaCXX/warn-xor-as-pow.cpp
The file was modifiedclang/include/clang/Basic/DiagnosticSemaKinds.td
The file was modifiedclang/lib/Sema/SemaExpr.cpp
The file was modifiedclang/include/clang/Basic/DiagnosticGroups.td
Commit a264b6074a4f8cf9b2eddeda9f636b3b150502c1 by Lang Hames
[ORC] Remove some dead code.
llvm-svn: 369218
The file was modifiedllvm/include/llvm/ExecutionEngine/Orc/Speculation.h
Commit cf276ba82e815fe171b3858a0b06d8f0f6c86fa2 by Lang Hames
[ORC] Make sure we linker-mangle symbol names in the SpeculationLayer.
If mangling is not performed then speculative lookups will fail.
llvm-svn: 369219
The file was modifiedllvm/examples/SpeculativeJIT/SpeculativeJIT.cpp
The file was modifiedllvm/include/llvm/ExecutionEngine/Orc/Speculation.h
Commit 45e598d1357c4436f5a13afa5e57c3600e13f2c1 by Jonas Devlieghere
[CMake] Update CMAKE_OSX_DEPLOYMENT_TARGET to 10.12.
After LLVM moved to C++14, the RWMutex implementation was removed in
favor of std::shared_timed_mutex, which is only available on macOS 10.12
and later. As a workaround for older deployment targets, I added
  the original RWMutexImpl again, guarded by the deployment target.
When doing a standalone build of LLDB using the Xcode generator, the
CMake cache specifies a minimum deployment target. However, LLVM and
Clang might have been built with a different minimum deployment target.
This is exactly what happened for the Xcode build. LLVM was built with a
minimum deployment target newer than 10.12, using
std::shared_timed_mutex. LLDB on the other hand was built with a minimum
deployment target of 10.11, using the old RWMutexImpl, resulting in
undefined symbols at link-time.
This patch changes the minimum deployment target for the Xcode build to
10.12 to work around this problem. A better solution would involve
synchronizing the minimum deployment or even not setting one at all.
llvm-svn: 369220
The file was modifiedlldb/cmake/caches/Apple-lldb-Xcode.cmake
Commit c313944da629acf66669b6bb76d33304d2dda483 by hubert.reinterpretcast
[cmake] Move blocks out of redundant else( MSVC ); NFC
Address post-commit comment on D66256 regarding the `else( MSVC )` block
containing only blocks guarded with `LLVM_COMPILER_IS_GCC_COMPATIBLE`,
which would imply `NOT MSVC`.
llvm-svn: 369221
The file was modifiedllvm/cmake/modules/HandleLLVMOptions.cmake
Commit 388b8dd94a470e589f5c01d27a38eb4c741db3b7 by craig.topper
[X86] Replace uses of getZeroVector for vXi1 vectors with
DAG.getConstant.
vXi1 vectors don't need special handling.
llvm-svn: 369222
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.cpp
Commit 6bd2e8eff817daa26d26a6f00f220b357857aa75 by craig.topper
[X86] Add test cases for suboptimal insertion of a vXi1 vector into a
larger vector with zeros in the lower elements and undef upper elements.
Currently we generate kshifts to clear both the upper and lower
elements, but we only need one kshift.
llvm-svn: 369223
The file was modifiedllvm/test/CodeGen/X86/avx512-skx-insert-subvec.ll
Commit 2ee46c7c4be1be5fa48af39232f62cf26d742efa by craig.topper
[X86] Add a special case to LowerCONCAT_VECTORSvXi1 to handle
concatenating zero vectors followed by one non-zero vector followed by
undef vectors.
For such a case we should only need a KSHIFTL, but we were previously
generating a KSHIFTL followed by a KSHIFTR because we mistakenly
believed we need to zero the undef elements.
llvm-svn: 369224
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.cpp
The file was modifiedllvm/test/CodeGen/X86/avx512-skx-insert-subvec.ll
Commit c9ee4c7c2207e48c5afaf4de7e2cb241a6837681 by craig.topper
[X86] Add test case for missed opportunity to recognize a vXi1 shuffle
as an insert into a zero vector.
We are currently missing this because shuffle canonicalization puts the
zero vector as V1 and the subvector as V2. Our current code doesn't
recognize this case.
llvm-svn: 369225
The file was modifiedllvm/test/CodeGen/X86/avx512-skx-insert-subvec.ll
Commit 2eb7951da39287ff12be9def2f0b08535c25a799 by craig.topper
[X86] Teach lower1BitShuffle to recognize padding a subvector with zeros
with V2 as the source and V1 as the zero vector.
Shuffle canonicalization can swap the sources so the zero vector might
be V1 and the subvector that's being padded can be V2.
llvm-svn: 369226
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.cpp
The file was modifiedllvm/test/CodeGen/X86/avx512-skx-insert-subvec.ll
Commit 269c6b1c15a7d105aa39de728e293614de18f973 by craig.topper
[X86] Teach lower1BitShuffle to match KSHIFTR that doesn't use Zeroable
and only relies on undef.
This allows us to widen the type when the KSHIFTR instruction doesn't
exist for the type. If we need to shift in zeroes into the upper
elements we would need more work to guarantee zeroes when widening.
llvm-svn: 369227
The file was modifiedllvm/test/CodeGen/X86/kshift.ll
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.cpp
Commit e47437a6effcbfce191f6a37f6e421624426201e by craig.topper
[X86] Fix the lower1BitShuffle code added in r369215 to correctly pass
the widened vector to the KSHIFT node.
Not sure how to test this as we have tests that exercise this code, but
nothing failed for the types not matching. Since all the k-registers use
equivalent register classes everything just ends up working.
llvm-svn: 369228
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.cpp
Commit dfe5f3eb0a0055244d019ede9214e7df8b7a9cca by zeratul976
[clangd] Update features table in the docs with links to LSP extension
proposals
Also update the semantic coloring entry to reflect it being supported in
clangd now.
Reviewers: sammccall
Subscribers: ilya-biryukov, MaskRay, jkorous, arphaman, kadircet,
cfe-commits
Tags: #clang
Differential Revision: https://reviews.llvm.org/D65373
llvm-svn: 369229
The file was modifiedclang-tools-extra/docs/clangd/Features.rst
Commit 4a198a7f990812f6a64ecb2d20d3503c66b5dea2 by nuta
[llvm-objcopy][MachO] Support load commands used in executables/shared
libraries
Summary: This patch implements copying some load commands that appear in
executables/shared libraries such as the indirect symbol table.
I don't add tests intentionally because this patch is incomplete: we
need a layout algorithm for executables/shared libraries. I'll submit it
as a separate patch with tests.
Reviewers: alexshap, rupprecht, jhenderson, compnerd
Reviewed By: alexshap
Subscribers: abrachet, mgorny, mgrang, MaskRay, mtrent, jakehehrlich,
llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D63395
llvm-svn: 369230
The file was modifiedllvm/tools/llvm-objcopy/CMakeLists.txt
The file was modifiedllvm/tools/llvm-objcopy/MachO/MachOReader.h
The file was modifiedllvm/tools/llvm-objcopy/MachO/MachOWriter.h
The file was modifiedllvm/tools/llvm-objcopy/MachO/MachOWriter.cpp
The file was modifiedllvm/tools/llvm-objcopy/MachO/MachOObjcopy.cpp
The file was addedllvm/tools/llvm-objcopy/MachO/MachOLayoutBuilder.cpp
The file was addedllvm/tools/llvm-objcopy/MachO/MachOLayoutBuilder.h
The file was modifiedllvm/tools/llvm-objcopy/MachO/Object.h
The file was modifiedllvm/tools/llvm-objcopy/MachO/MachOReader.cpp
Commit dee9546b8f8386223769e96becc2e24ddcc39de7 by nuta
[llvm-objcopy][MachO] Implement a layout algorithm for executables
Summary: The layout algorithm for relocatable objects and for executable
are somewhat different. This patch implements the latter one based on
the algorithm in LLD (MachOFileLayout).
Reviewers: alexshap, rupprecht, jhenderson
Reviewed By: alexshap
Subscribers: jakehehrlich, abrachet, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D65539
llvm-svn: 369231
The file was modifiedllvm/tools/llvm-objcopy/MachO/MachOLayoutBuilder.cpp
The file was addedllvm/test/tools/llvm-objcopy/MachO/basic-executable-copy.test
Commit ebb7ddc6330b28b8c7e53d4c68d3684c127a41c1 by craig.topper
[X86] Teach lower1BitShuffle to match right shifts with upper zero
elements on types that don't natively support KSHIFT.
We can support these by widening to a supported type, then shifting all
the way to the left and then back to the right to ensure that we shift
in zeroes.
llvm-svn: 369232
The file was modifiedllvm/test/CodeGen/X86/kshift.ll
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.cpp
Commit 38426c114f6e50f8638bdd656f2f423151bc8eca by maskray
[MC] Don't emit .symver redirected symbols to the symbol table
GNU as keeps the original symbol in the symbol table for defined @ and
@@, but suppresses it in other cases (@@@ or undefined). The original
symbol is usually undesired: In a shared object, the original symbol can
be localized with a version script, but it is hard to remove/localize in
an archive:
1) a post-processing step removes the undesired original symbol 2)
consumers (executable) of the archive are built with the
  version script
Moreover, it can cause linker issues like binutils PR/18703 if the
original symbol name and the base name of the versioned symbol is the
same (both ld.bfd and gold have some code to work around defined @ and
@@). In lld, if it sees f and f@v1:
  --version-script =(printf 'v1 {};') => f and f@v1
--version-script =(printf 'v1 { f; };') => f@v1 and f@@v1
It can be argued that @@@ added on 2000-11-13 corrected the @ and @@
mistake.
This patch catches some more multiple version errors (defined @ and @@),
and consistently suppress the original symbol. This addresses all the
problems listed above.
If the user wants other aliases to the versioned symbol, they can copy
the original symbol to other symbol names with .set directive, e.g.
    .symver f, f@v1  # emit f@v1 but not f into .symtab
   .set f_impl, f   # emit f_impl into .symtab
llvm-svn: 369233
The file was modifiedllvm/lib/MC/ELFObjectWriter.cpp
The file was modifiedllvm/test/MC/PowerPC/ppc64-localentry-symbols.s
The file was modifiedllvm/test/MC/ELF/symver.s
The file was removedllvm/test/MC/ELF/multiple-different-symver.s
The file was addedllvm/test/MC/ELF/symver-multiple-version.s
The file was modifiedllvm/test/LTO/X86/symver-asm.ll
The file was modifiedllvm/test/LTO/X86/symver-asm2.ll
The file was modifiedllvm/test/MC/ARM/arm-elf-symver.s
Commit 1e335611adc863201a3522705d30b989e76d2b66 by nuta
Revert r369230 and r369231
Looks these commits break CI builds:
-
http://lab.llvm.org:8011/builders/sanitizer-x86_64-linux-gn/builds/4159
This commit reverts r369230 and r369231 (git coommit: 4a198a7 and
dee9546).
llvm-svn: 369234
The file was removedllvm/test/tools/llvm-objcopy/MachO/basic-executable-copy.test
The file was removedllvm/tools/llvm-objcopy/MachO/MachOLayoutBuilder.cpp
The file was removedllvm/tools/llvm-objcopy/MachO/MachOLayoutBuilder.h
The file was modifiedllvm/tools/llvm-objcopy/MachO/MachOReader.h
The file was modifiedllvm/tools/llvm-objcopy/MachO/MachOObjcopy.cpp
The file was modifiedllvm/tools/llvm-objcopy/MachO/Object.h
The file was modifiedllvm/tools/llvm-objcopy/MachO/MachOReader.cpp
The file was modifiedllvm/tools/llvm-objcopy/MachO/MachOWriter.cpp
The file was modifiedllvm/tools/llvm-objcopy/MachO/MachOWriter.h
The file was modifiedllvm/tools/llvm-objcopy/CMakeLists.txt
Commit 0697bcd1276111e2917b090cde8535ee2f61fbe0 by jan.kratochvil
[lldb] Remove unused inheritance in RegularExpression
D66174 left inherited llvm::Regex which is now a member variable there.
Approved as a part of: https://reviews.llvm.org/D66392#1634575
llvm-svn: 369235
The file was modifiedlldb/include/lldb/Utility/RegularExpression.h
Commit b1752f670f3d6393306dd5d37546b6e23384d8a2 by dlj
Revert [Attributor] Fix: Do not partially resolve returned calls.
This reverts r369160 (git commit
f72d9b1c97b41fff48ad1eecbba59a29c171bff4)
r369160 caused some tests to fail under UBSAN. See thread on
llvm-commits.
llvm-svn: 369236
The file was modifiedllvm/lib/Transforms/IPO/Attributor.cpp
Commit 21599876be328ff6b5c6cf09544ade7e337cb48d by Raphael Isemann
[lldb][NFC] Address review comments to StringList for-loop support
llvm-svn: 369237
The file was modifiedlldb/source/Utility/StringList.cpp
The file was modifiedlldb/include/lldb/Utility/StringList.h
The file was modifiedlldb/unittests/Utility/StringListTest.cpp
The file was modifiedlldb/source/Commands/CommandObjectType.cpp
Commit 17587b36d1928c3399d4d9af6daa052c0cdd6327 by jvikstrom
[clangd] Added special HighlightingKind for function parameters.
Summary: This means that function parameters are no longer highlighted
as variable.other.cpp but instead as variable.parameter.cpp which is the
more "correct" TextMate scope for them.
Reviewers: hokein, ilya-biryukov
Subscribers: MaskRay, jkorous, arphaman, kadircet, cfe-commits
Tags: #clang
Differential Revision: https://reviews.llvm.org/D66335
llvm-svn: 369238
The file was modifiedclang-tools-extra/clangd/test/semantic-highlighting.test
The file was modifiedclang-tools-extra/clangd/SemanticHighlighting.h
The file was modifiedclang-tools-extra/clangd/unittests/SemanticHighlightingTests.cpp
The file was modifiedclang-tools-extra/clangd/SemanticHighlighting.cpp
Commit b127771f7d2972acad81550e03cc4e1e3c1fcd1c by maskray
[MC] Delete unnecessary diagnostic: "No relocation available to
represent this relative expression"
Replace
- error: No relocation available to represent this relative expression
with
+ error: symbol 'undef' can not be undefined in a subtraction expression
or
+ error: Cannot represent a difference across sections
Keep !IsPcRel as an assertion after the two diagnostic checks are done.
llvm-svn: 369239
The file was modifiedllvm/test/MC/ELF/bad-expr2.s
The file was modifiedllvm/test/MC/ARM/error-location.s
The file was modifiedllvm/test/MC/AArch64/error-location.s
The file was modifiedllvm/test/MC/AArch64/adr-diagnostics.s
The file was modifiedllvm/lib/MC/ELFObjectWriter.cpp
Commit 81094aad617468208084b574ed7063ed7af7b227 by Raphael Isemann
[lldb][NFC] Use GetMaxStringLength in CommandObjectApropos::DoExecute
llvm-svn: 369240
The file was modifiedlldb/source/Commands/CommandObjectApropos.cpp
Commit cedd0d9a6e4b433e1cd6585d1d4d152eb5e60b11 by dlj
Revert [Attributor] Fix: Make sure we set the changed flag
This reverts r369159 (git commit
cbaf1fdea2de891bdbc49cdec89ae2077e6b9ed0)
r369160 caused a test to fail under UBSAN. See thread on llvm-commits.
llvm-svn: 369241
The file was modifiedllvm/lib/Transforms/IPO/Attributor.cpp
Commit b8639f5c0fd82d4c29eb55590e1dfaf0a54dbb94 by Raphael Isemann
[lldb][NFC] Remove StringList::AutoComplete
We don't need this very specific function in StringList that we only
call once in LLDB.
llvm-svn: 369242
The file was modifiedlldb/source/Commands/CommandCompletions.cpp
The file was modifiedlldb/source/Utility/StringList.cpp
The file was modifiedlldb/include/lldb/Utility/StringList.h
Commit b58ba8aae710cba925e3c59accde6695c1d40aa3 by jeremy.morse.llvm
[DebugInfo] Test for variable range un-coalescing
LiveDebugVariables can coalesce ranges of variable locations across
multiple basic blocks. However when it recreates DBG_VALUE instructions,
it has to recreate one DBG_VALUE per block, otherwise it doesn't
represent the pre-regalloc layout and variable assignments can go
missing.
This feature works -- however while mucking around with
LiveDebugVariables, I commented the relevant code it out and no tests
failed. Thus, here's a test that checks LiveDebugVariables preserves
DBG_VALUEs across block boundaries.
Differential Revision: https://reviews.llvm.org/D66347
llvm-svn: 369243
The file was addedllvm/test/DebugInfo/MIR/X86/livedebugvars-crossbb-interval.mir
Commit 2bfc13fde1296a63dba5d5589aac9aa5ae45949e by david.green
[ARM] MVE sext costs
This adds some sext costs for MVE, taken from the length of assembly
sequences that we currently generate.
Differential Revision: https://reviews.llvm.org/D66010
llvm-svn: 369244
The file was modifiedllvm/test/Analysis/CostModel/ARM/cast.ll
The file was modifiedllvm/lib/Target/ARM/ARMTargetTransformInfo.cpp
Commit f312c1ecf4bc7003f4b10231a3147d004a39bfae by sam.tebbs
[ARM] Add support for MVE vaddv
This patch adds vecreduce_add and the relevant instruction selection for
vaddv.
Differential revision: https://reviews.llvm.org/D66085
llvm-svn: 369245
The file was modifiedllvm/lib/Target/ARM/ARMInstrMVE.td
The file was modifiedllvm/include/llvm/Target/TargetSelectionDAG.td
The file was modifiedllvm/lib/Target/ARM/ARMTargetTransformInfo.cpp
The file was modifiedllvm/lib/Target/ARM/ARMISelLowering.cpp
The file was addedllvm/test/CodeGen/Thumb2/mve-vaddv.ll
The file was modifiedllvm/lib/Target/ARM/ARMTargetTransformInfo.h
Commit 2cafd872fb97f2899ac0f1b01ed82ee88581c86d by peter.smith
[ELF][ARM] Add a test that maxes out the thunk convergence limit
Add a test that takes the maximum amount of passes permitted to
converge. This will make sure that any symbol defined in a linker script
gets the correct value and that any other convergence limit involving
symbol address doesn't restrict Thunk convergence.
Differential Revision: https://reviews.llvm.org/D66346
llvm-svn: 369246
The file was addedlld/test/ELF/arm-thunk-many-passes.s
Commit 176bbd5cde362ad965dcda5cc72b655117685a5a by jeremy.morse.llvm
[DebugInfo] Make postra sinking of DBG_VALUEs subregister-safe
Currently the machine instruction sinker identifies DBG_VALUE insts that
also need to sink by comparing register numbers. Unfortunately this
isn't safe, because (after register allocation) a DBG_VALUE may read a
register that aliases what's being sunk. To fix this, identify the
DBG_VALUEs that need to sink by recording & examining their register
units. Register units gives us the following guarantee:
  "Two registers overlap if and only if they have a common register
unit"
[MCRegisterInfo.h]
Thus we can always identify aliasing DBG_VALUEs if the set of register
units read by the DBG_VALUE, and the register units of the instruction
being sunk, intersect. (MachineSink already uses classes like
"LiveRegUnits" for determining sinking validity anyway).
The test added checks for super and subregister DBG_VALUE reads of a
sunk copy being sunk as well.
Differential Revision: https://reviews.llvm.org/D58191
llvm-svn: 369247
The file was modifiedllvm/lib/CodeGen/MachineSink.cpp
The file was addedllvm/test/DebugInfo/MIR/X86/postra-subreg-sink.mir
Commit d9a071c54be5531ea0b0b949a15497a9c7733755 by maskray
[MC] Simplify ELFObjectWriter::recordRelocation. NFC
llvm-svn: 369248
The file was modifiedllvm/lib/MC/ELFObjectWriter.cpp
Commit fb443746a89d26987e03d1828a9e0d274de6f78a by Raphael Isemann
[lldb][NFC] Add a few more completion tests to increase test coverage
These tests are mostly trying to reach the different completion
functions in CommandCompletions.cpp (::ArchitectureNames, ::DiskFiles,
::Modules).
llvm-svn: 369249
The file was modifiedlldb/packages/Python/lldbsuite/test/functionalities/completion/TestCompletion.py
Commit b38bac3699d6a9377254899b84edc483d495b302 by spatel
[SLP] reduce duplicated code; NFC
llvm-svn: 369250
The file was modifiedllvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
Commit eb801abd581730d532eee7d02abb41ede72e1e2b by anastasia.stulova
[OpenCL] Fix addr space deduction for pointers/references to arrays.
Rewrite the logic for detecting if we are deducing addr space of a
pointee type to take into account special logic for arrays. For
pointers/references to arrays we can have any number of parentheses
expressions as well as nested pointers.
Differential Revision: https://reviews.llvm.org/D66137
llvm-svn: 369251
The file was modifiedclang/lib/Sema/SemaType.cpp
The file was modifiedclang/test/SemaOpenCLCXX/address-space-deduction.cl
Commit 0684132107e51b506b31e3be7dc2e3181b90a4b4 by Raphael Isemann
[lldb][NFC] Use CompletionRequest in Variable::AutoComplete
llvm-svn: 369252
The file was modifiedlldb/source/Symbol/Variable.cpp
Commit b21a3654f0b916e885c6e55af36fecefdd2569b5 by sven.vanhaastregt
[OpenCL] Add generic type handling for builtin functions
Generic types are an abstraction of type sets.  It mimics the way
functions are defined in the OpenCL specification.  For example, floatN
can abstract all the vector sizes of the float type.
This allows to
* stick more closely to the specification, which uses generic types;
* factorize definitions of functions with numerous prototypes in the
  tablegen file; and
* reduce the memory impact of functions with many overloads.
Patch by Pierre Gondois and Sven van Haastregt.
Differential Revision: https://reviews.llvm.org/D65456
llvm-svn: 369253
The file was modifiedclang/lib/Sema/OpenCLBuiltins.td
The file was modifiedclang/test/SemaOpenCL/fdeclare-opencl-builtins.cl
The file was modifiedclang/lib/Sema/SemaLookup.cpp
The file was modifiedclang/utils/TableGen/ClangOpenCLBuiltinEmitter.cpp
Commit 6520ba3e94eb219a779c4e69d15f0464c325fb97 by maskray
[llvm-readobj] unwrapOrError: remove unnecessary llvm_unreachable after
r369194
llvm-svn: 369254
The file was modifiedllvm/tools/llvm-readobj/llvm-readobj.h
Commit 0f9b5f86f1cd06c4a7fc9679d44f334796be653f by spatel
[SLP] add test that requires shuffle of scalars; NFC
llvm-svn: 369255
The file was modifiedllvm/test/Transforms/SLPVectorizer/X86/load-merge.ll
Commit 88df53e6eaf355271e90fa928df53ab6ea244a69 by david.stenberg
[DebugInfo] Allow bundled calls in the MIR's call site info
Summary: Extend the MIR parser and writer so that the call site
information can refer to calls that are bundled.
Reviewers: aprantl, asowda, NikolaPrica, djtodoro, ivanbaev, vsk
Reviewed By: aprantl
Subscribers: arsenm, hiraditya, llvm-commits
Tags: #debug-info, #llvm
Differential Revision: https://reviews.llvm.org/D66145
llvm-svn: 369256
The file was modifiedllvm/lib/CodeGen/MIRPrinter.cpp
The file was modifiedllvm/lib/CodeGen/MIRParser/MIRParser.cpp
The file was addedllvm/test/CodeGen/MIR/Hexagon/bundled-call-site-info.mir
Commit 1c1f8f215d89f1946ec4942c0d4ce8d4bd4f33f3 by asb
[RISCV] Don't force absolute FK_Data_X fixups to relocs
The current behavior of shouldForceRelocation forces relocations for the
majority of fixups when relaxation is enabled. This makes sense for
fixups which incorporate symbols but is unnecessary for simple data
fixups where the fixup target is already resolved to an absolute value.
Differential Revision: https://reviews.llvm.org/D63404 Patch by Edward
Jones.
llvm-svn: 369257
The file was modifiedllvm/test/MC/RISCV/fde-reloc.s
The file was modifiedllvm/lib/Target/RISCV/MCTargetDesc/RISCVAsmBackend.cpp
The file was modifiedllvm/test/MC/RISCV/linker-relaxation.s
Commit a0a4c6b7224e029d736c0e2f58df1493770d93c4 by sidneym
[lld][Hexagon] Add GOTREL relocations.
Add GOTREL relocation support. (S + A - GOT)
Differential Revision: https://reviews.llvm.org/D66260
llvm-svn: 369258
The file was modifiedlld/ELF/Arch/Hexagon.cpp
The file was addedlld/test/ELF/hexagon-gotrel.s
Commit b6ab533b93420e828ea6f555bc7d34d91cb07a34 by aaron
Don't keep stale pointers to LoopInfos.
CGLoopInfo was keeping pointers to parent loop LoopInfos, but when the
loop info vector grew, it reallocated the storage and invalidated all of
the parent pointers, causing use-after-free. Manage the lifetimes of the
LoopInfos separately so that the pointers aren't stale.
Patch by Bevin Hansson.
llvm-svn: 369259
The file was modifiedclang/lib/CodeGen/CGLoopInfo.cpp
The file was modifiedclang/lib/CodeGen/CGLoopInfo.h
The file was addedclang/test/CodeGen/loop-info-asan.c
Commit c8a1dfc484c94238c01567247c0cf83584f8719c by maskray
[ELF][Hexagon] Improve error message for unknown relocations
Like rLLD354040
Previously, for unknown 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 Hexagon::getRelExpr and add the error
there. We will get consistent error message like `error: unknown
relocation (1024) against symbol foo`
Reviewed By: sidneym
Differential Revision: https://reviews.llvm.org/D66275
llvm-svn: 369260
The file was modifiedlld/ELF/Arch/Hexagon.cpp
Commit 0776da5236e032d8b2419f56ceff990a668c7d89 by Jinsong Ji
[PeepholeOptimizer] Don't assume bitcast def always has input
Summary: If we have a MI marked with bitcast bits, but without input
operands, PeepholeOptimizer might crash with assert.
eg: If we apply the changes in PPCInstrVSX.td as in this patch:
[(set v4i32:$XT, (bitconvert (v16i8 immAllOnesV)))]>;
We will get assert in PeepholeOptimizer.
``` llvm-lit
llvm-project/llvm/test/CodeGen/PowerPC/build-vector-tests.ll -v
llvm-project/llvm/include/llvm/CodeGen/MachineInstr.h:417: const
llvm::MachineOperand &llvm::MachineInstr::getOperand(unsigned int)
const: Assertion `i < getNumOperands() && "getOperand() out of range!"'
failed.
```
The fix is to abort if we found out of bound access.
Reviewers: qcolombet, MatzeB, hfinkel, arsenm
Reviewed By: qcolombet
Subscribers: wdng, arsenm, steven.zhang, wuzish, nemanjai, hiraditya,
kbarton, MaskRay, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D65542
llvm-svn: 369261
The file was addedllvm/test/CodeGen/PowerPC/bitcast-peephole.mir
The file was modifiedllvm/lib/CodeGen/PeepholeOptimizer.cpp
The file was modifiedllvm/lib/Target/PowerPC/PPCInstrVSX.td
Commit ac0e6c6502f0bf2456cab6671b4a40c999781438 by maskray
[ELF] Move (copy relocation/canonical PLT) before error checking
In processRelocAux(), we handle errors before copy relocation/canonical
PLT. This makes error checking a bit complex because we have to check
for conditions that will be allowed by copy relocation/canonical PLT.
Instead, move copy relocation/canonical PLT before error checking. This
simplifies the previous clumsy error checking code
`config->shared || (config->pie && expr == R_ABS && type !=
target->symbolicRel)`
to the simple `config->isPic`. Some diagnostics can be reported in
different ways. The code motion changes diagnostics for some contrived
test cases:
* copy-rel-pie-error.s -> copy-rel-pie2.s:
It was rejected before but accepted now. ld.bfd also accepts the case.
* copy-errors.s: "cannot preempt symbol" changes to "symbol 'bar' has no
type"
* got32{,x}-i386.s: the suggestion changes from "-fPIC or -Wl,-z,notext"
to "-fPIE"
* x86-64-dyn-rel-error5.s: one diagnostic changes for -pie case
Reviewed By: peter.smith
Differential Revision: https://reviews.llvm.org/D66007
llvm-svn: 369262
The file was modifiedlld/test/ELF/copy-errors.s
The file was modifiedlld/test/ELF/got32-i386.s
The file was modifiedlld/test/ELF/x86-64-dyn-rel-error5.s
The file was removedlld/test/ELF/copy-rel-pie-error.s
The file was modifiedlld/test/ELF/got32x-i386.s
The file was addedlld/test/ELF/copy-rel-pie2.s
The file was modifiedlld/ELF/Relocations.cpp
Commit 9d5e8a476ff5e5823a2d34274dbcaa8d200e9f85 by grimar
[Object/COFF.h] - Stop returning std::error_code in a few methods. NFCI.
There are 4 methods that return std::error_code now, though they do not
have to because they are always succeed. I refactored them.
This allows to simplify the code in tools a bit.
llvm-svn: 369263
The file was modifiedllvm/include/llvm/Object/COFF.h
The file was modifiedllvm/tools/llvm-readobj/ARMWinEHPrinter.cpp
The file was modifiedllvm/lib/Object/COFFObjectFile.cpp
The file was modifiedllvm/tools/llvm-objcopy/COFF/Reader.cpp
The file was modifiedllvm/tools/llvm-objdump/COFFDump.cpp
The file was modifiedllvm/tools/llvm-readobj/COFFDumper.cpp
The file was modifiedllvm/tools/obj2yaml/coff2yaml.cpp
Commit 81301541159280ae66eeeda32786c474ff76264c by deadalnix
Automatically generate AVX512 test cases. NFC
llvm-svn: 369264
The file was modifiedllvm/test/CodeGen/X86/avx512vl-nontemporal.ll
The file was modifiedllvm/test/CodeGen/X86/avx512-mask-spills.ll
The file was modifiedllvm/test/CodeGen/X86/avx512-nontemporal.ll
The file was modifiedllvm/test/CodeGen/X86/avx512-memfold.ll
The file was modifiedllvm/test/CodeGen/X86/avx512-fma-commute.ll
The file was modifiedllvm/test/CodeGen/X86/avx512-inc-dec.ll
The file was modifiedllvm/test/CodeGen/X86/avx512-bugfix-25270.ll
The file was modifiedllvm/test/CodeGen/X86/avx512-scalar_mask.ll
The file was modifiedllvm/test/CodeGen/X86/avx512-intel-ocl.ll
Commit 42336682b211e7d9909a6e9077e0bd87e8085122 by grimar
[llvm-objdump] - Restore lost comment.
It was removed by mistake in r369263 (D66417).
llvm-svn: 369265
The file was modifiedllvm/tools/llvm-objdump/COFFDump.cpp
Commit a023d6b7de784719398cfd81b9f2fe871fa35293 by sguelton
[nfc] Silent gcc warning
llvm-svn: 369266
The file was modifiedllvm/lib/Target/AArch64/AArch64InstructionSelector.cpp
Commit 6632ad5851d6f404193a81c15664425ec5706e4a by Raphael Isemann
[lldb][NFC] Stop using GetNumberOfMatches in CompletionRequest test
This function is just a wrapper for GetNumberOfResults and will be
removed soon. This patch just changes all calls to GetNumberOfResults
where possible (which is currently just the unit test).
llvm-svn: 369267
The file was modifiedlldb/unittests/Utility/CompletionRequestTest.cpp
Commit edfaee08115376467d1c95573de991aebfdaeb42 by lebedev.ri
[TargetLowering] x s% C == 0 fold: vector divisor with INT_MIN handling
Summary: The general fold is only valid for positive divisors. Which
effectively means, it is invalid for `INT_MIN` divisors, and we
currently bailout if we see them.
But that is too strict, we can just fix-up the results. For that, let's
do a second computation 'in parallel':
``` Name: srem -> and Pre: isPowerOf2(C)
%o = srem i8 %X, C
%r = icmp eq %o, 0
=>
%n = and i8 %X, C-1
%r = icmp eq %n, 0
``` https://rise4fun.com/Alive/Sup
And then just blend results: if the divisor was `INT_MIN`, pick the
value we got via bit-test, else pick the value from general fold.
There's interesting observation - `ISD::ROTR` is set to
`LegalizeAction::Expand` before AVX512, so we should not treat `INT_MIN`
divisor as even; and as it can be seen while `@test_srem_odd_even_one`
improves on all run-lines,
`@test_srem_odd_even_INT_MIN` only improves for AVX512.
Reviewers: RKSimon, craig.topper, spatel
Reviewed By: RKSimon
Subscribers: hiraditya, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D66300
llvm-svn: 369268
The file was modifiedllvm/test/CodeGen/X86/srem-seteq-vec-nonsplat.ll
The file was modifiedllvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
Commit 08c77b97c0620b3d8e058e4780bb4f62d81c5958 by pavel
Filesystem/Windows: fix inconsistency in readNativeFileSlice API
Summary: The windows version implementation of readNativeFileSlice, was
trying to match the POSIX behavior of not treating EOF as an error, but
it was only handling the case of reading from a pipe. Attempting to read
past the end of a regular file returns a slightly different error code,
which needs to be handled too. This patch adds ERROR_HANDLE_EOF to the
list of error codes to be treated as an end of file, and adds some unit
tests for the API.
This issue was found while attempting to land D66224, which caused a
bunch of lldb tests to start failing on windows.
Reviewers: rnk, aganea
Subscribers: kristina, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D66344
llvm-svn: 369269
The file was modifiedllvm/unittests/Support/Path.cpp
The file was modifiedllvm/lib/Support/Windows/Path.inc
Commit 471bbb6e72830ad24d8079c5ee2acf0ec1fac961 by z.zoelec2
[libc++] reverts commit a5f5aad568bb7a91ceee47641f3076ac339ef8c7.
The commit being reverted caused segfaults when building with libc++ and
GCC (and possibly other configurations).
Differential Revision: https://reviews.llvm.org/D62868
llvm-svn: 369270
The file was modifiedlibcxx/include/memory
Commit ec4540d8a62cfef017173ce7309adcb9beca4e53 by maskray
[ELF] Simplify processRelocAux and allow a corner-case error
After D66007/r369262, if the control flow reaches `if
(sym.isUndefined())`, we know:
* The relocation is not a link-time constant => symbol is preemptable =>
Undefined or SharedSymbol
* Not an undef weak.
* -no-pie.
* The symbol type is neither STT_OBJECT nor STT_FUNC.
ld.lld --export-dynamic --unresolved-symbols=ignore-all %t.o can satisfy
these conditions. Delete the isUndefined() test so that we error
`symbol '...' has no type`, because we don't know the type to make the
decision to create copy relocation/canonical PLT.
llvm-svn: 369271
The file was modifiedlld/test/ELF/x86-64-dyn-rel-error.s
The file was modifiedlld/ELF/Relocations.cpp
Commit 8880ac648ceb337868b7c4949776e50f5fd1cad0 by Jonas Devlieghere
[dotest] Add --dwarf-version to override the tested DWARF version.
On the matrix bot on GreenDragon [1] we want to run the test suite
against different DWARF versions. The idea here is not to replace
targeted tests for certain DWARF features, but rather to provide an easy
way to support this configuration.
[1] http://green.lab.llvm.org/green/view/LLDB/job/lldb-cmake-matrix/
Differential revision: https://reviews.llvm.org/D66370
llvm-svn: 369272
The file was modifiedlldb/packages/Python/lldbsuite/test/decorators.py
The file was modifiedlldb/packages/Python/lldbsuite/test/configuration.py
The file was modifiedlldb/packages/Python/lldbsuite/test/lldbtest.py
The file was modifiedlldb/packages/Python/lldbsuite/test/dotest_args.py
The file was modifiedlldb/packages/Python/lldbsuite/test/dotest.py
Commit f497da304161c58388d2cc1e09507cde87d51eaa by jvikstrom
[clangd] Added highlighting for tokens that are macro arguments.
Summary: Adds semantic highlighting for tokens that are a macro
argument. Example:
``` D_V(SomeVar);
``` The "SomeVar" inside the macro is highlighted as a variable now.
Tokens that are in a macro body expansion are ignored in this patch for
three reasons.
* The spelling loc is inside the macro "definition" meaning it would
highlight inside the macro definition (could probably easily be fixed by
using getExpansionLoc instead of getSpellingLoc?)
* If wanting to highlight the macro definition this could create
duplicate tokens. And if the tokens are of different types there would
be conflicts (tokens in the same range but with different types). Say a
macro defines some name and both a variable declaration and a function
use this, there would be two tokens in the macro definition but one with
Kind "Variable" and the other with Kind "Function".
* Thirdly, macro body expansions could come from a file that is not the
main file (easily fixed, just check that the Loc is in the main file and
not even a problem if we wanted to highlight the actual macro
"invocation")
Reviewers: hokein, sammccall, ilya-biryukov
Subscribers: MaskRay, jkorous, arphaman, kadircet, cfe-commits
Tags: #clang
Differential Revision: https://reviews.llvm.org/D64741
llvm-svn: 369275
The file was modifiedclang-tools-extra/clangd/unittests/SemanticHighlightingTests.cpp
The file was modifiedclang-tools-extra/clangd/SemanticHighlighting.cpp
Commit e8e914e6404b3402ca80aa75f3944e8fee662de6 by sbc
[lld][WebAssembly] Honor --no-export-dynamic even with -shared
Differential Revision: https://reviews.llvm.org/D66359
llvm-svn: 369276
The file was modifiedlld/wasm/Driver.cpp
The file was addedlld/test/wasm/shared-export-dynamic.ll
Commit 8682281063d6477e01aaa5f06832e03d3b8a702f by sstipanovic
[Attributor] -attributor-verify has false positives. Temporarily remove
it, until resolved.
llvm-svn: 369277
The file was modifiedllvm/test/Transforms/FunctionAttrs/read_write_returned_arguments_scc.ll
Commit ecbaba672e18a5d321b80dbfde9f56770469fd6e by Andrea_DiBiagio
[X86] Added extensive scheduling model tests for all the CMPXCHG
variants. NFC
Addresses a review comment in D66424
llvm-svn: 369279
The file was modifiedllvm/test/tools/llvm-mca/X86/BdVer2/resources-cmpxchg.s
The file was modifiedllvm/test/tools/llvm-mca/X86/SLM/resources-cmpxchg.s
The file was modifiedllvm/test/tools/llvm-mca/X86/Barcelona/resources-cmpxchg.s
The file was modifiedllvm/test/tools/llvm-mca/X86/Haswell/resources-cmpxchg.s
The file was modifiedllvm/test/tools/llvm-mca/X86/Generic/resources-cmpxchg.s
The file was modifiedllvm/test/tools/llvm-mca/X86/SkylakeClient/resources-cmpxchg.s
The file was modifiedllvm/test/tools/llvm-mca/X86/Znver1/resources-cmpxchg.s
The file was modifiedllvm/test/tools/llvm-mca/X86/SandyBridge/resources-cmpxchg.s
The file was modifiedllvm/test/tools/llvm-mca/X86/Atom/resources-cmpxchg.s
The file was modifiedllvm/test/tools/llvm-mca/X86/Broadwell/resources-cmpxchg.s
The file was modifiedllvm/test/tools/llvm-mca/X86/BtVer2/resources-cmpxchg.s
The file was modifiedllvm/test/tools/llvm-mca/X86/SkylakeServer/resources-cmpxchg.s
Commit 296757c07ccc66a5d5a8f3f7cbc769faef49cfd9 by Louis Dionne
[libc++] Add XFAIL for is_base_of test on AppleClang 11
llvm-svn: 369280
The file was modifiedlibcxx/test/std/utilities/meta/meta.rel/is_base_of_union.pass.cpp
Commit 62b072d413eed260fb526df5edd87691a66f0c60 by erich.keane
Implement P1668R1
Allow inline assembly statements in unexecuted branches of constexpr
functions.
llvm-svn: 369281
The file was modifiedclang/test/Lexer/cxx-features.cpp
The file was modifiedclang/lib/Frontend/InitPreprocessor.cpp
The file was modifiedclang/lib/Sema/SemaDeclCXX.cpp
The file was modifiedclang/test/CXX/dcl.dcl/dcl.spec/dcl.constexpr/p3.cpp
The file was modifiedclang/test/SemaCXX/cxx1z-constexpr-lambdas.cpp
Commit ab00f237ac9db0fb91120bf4a5454f44ad31cf7a by erich.keane
Update cxx_status.html with P1668 status.
llvm-svn: 369282
The file was modifiedclang/www/cxx_status.html
Commit 93c27871936c797380aef9d47a969c088edb0bff by craig.topper
[CGP] Remove ModifiedDT from the makeBitReverse loop
I don't think anything in this loop modifies the control flow and we
don't restart any iteration after setting the flag.
This code was added in http://reviews.llvm.org/D16893 but looking at the
test case added there the code that caused the dominator tree to change
was merging blocks with their predecessor not the bitreverse
optimization.
Differential Revision: https://reviews.llvm.org/D66366
llvm-svn: 369283
The file was modifiedllvm/lib/CodeGen/CodeGenPrepare.cpp
Commit f04d246d7d13868e2d0922b9743d0b3f4c76c515 by erich.keane
Fix test where diagnostics changed in P1668 implementation
llvm-svn: 369284
The file was modifiedclang/test/SemaCXX/cxx1z-constexpr-lambdas.cpp
Commit 949f1908102ee6ae66e439909ded0fe6e8c5d695 by David CARLIER
[Sanitizer] arc4random interception on Mac
Reviewers: yln,vitalybuka
Reviewed By: yln
Differential Revision: https://reviews.llvm.org/D66391
llvm-svn: 369285
The file was modifiedcompiler-rt/lib/sanitizer_common/sanitizer_mac.cpp
The file was modifiedcompiler-rt/test/sanitizer_common/TestCases/Posix/arc4random.cpp
The file was modifiedcompiler-rt/lib/sanitizer_common/sanitizer_platform_interceptors.h
Commit a8abe1f82899847e29c4f1d66c32fad17dacb62f by erich.keane
Fix poorly formatted HTML in the cxx_status.html file caused by adding
1668.
llvm-svn: 369286
The file was modifiedclang/www/cxx_status.html
Commit a0d92c72620c49aa36b1738a272a2715f7909a6a by craig.topper
[X86] Teach lowerV4I32Shuffle to only use broadcasts if the mask has
more than one undef element. Prioritize shifts over broadcast in
lowerV8I16Shuffle.
The motivating case are the changes in vector-reduce-add.ll where we
were doing extra work in the scalar domain instead of shuffling. There
may be some one use check that needs to be looked into there, but this
patch sidesteps the issue by avoiding broadcasts that aren't really
broadcasting.
Differential Revision: https://reviews.llvm.org/D66071
llvm-svn: 369287
The file was modifiedllvm/test/CodeGen/X86/shuffle-vs-trunc-512.ll
The file was modifiedllvm/test/CodeGen/X86/vector-shuffle-combining.ll
The file was modifiedllvm/test/CodeGen/X86/avx512-shuffles/partial_permute.ll
The file was modifiedllvm/test/CodeGen/X86/insertelement-shuffle.ll
The file was modifiedllvm/test/CodeGen/X86/sse41.ll
The file was modifiedllvm/test/CodeGen/X86/vector-shuffle-512-v16.ll
The file was modifiedllvm/test/CodeGen/X86/vector-shuffle-128-v4.ll
The file was modifiedllvm/test/CodeGen/X86/vector-reduce-add.ll
The file was modifiedllvm/test/CodeGen/X86/vector-shuffle-128-v8.ll
The file was modifiedllvm/test/CodeGen/X86/avg.ll
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.cpp
Commit bf989187c30f37cfb1bb1496c06fe6047ee15202 by Andrea_DiBiagio
[X86] Move scheduling tests for CMPXCHG to the corresponding
resources-x86_64.s files. NFC
In D66424 it has been requested to move all the new tests added by
r369278 into resources-x86_64.s. That is because only the 8b/16 ops
should be tested by resources-cmpxchg.s. This partially reverts r369278.
llvm-svn: 369288
The file was modifiedllvm/test/tools/llvm-mca/X86/SkylakeServer/resources-cmpxchg.s
The file was modifiedllvm/test/tools/llvm-mca/X86/SandyBridge/resources-x86_64.s
The file was modifiedllvm/test/tools/llvm-mca/X86/Generic/resources-x86_64.s
The file was modifiedllvm/test/tools/llvm-mca/X86/Znver1/resources-x86_64.s
The file was modifiedllvm/test/tools/llvm-mca/X86/Atom/resources-cmpxchg.s
The file was modifiedllvm/test/tools/llvm-mca/X86/Barcelona/resources-cmpxchg.s
The file was modifiedllvm/test/tools/llvm-mca/X86/BdVer2/resources-cmpxchg.s
The file was modifiedllvm/test/tools/llvm-mca/X86/BdVer2/resources-x86_64.s
The file was modifiedllvm/test/tools/llvm-mca/X86/BtVer2/resources-x86_64.s
The file was modifiedllvm/test/tools/llvm-mca/X86/Haswell/resources-x86_64.s
The file was modifiedllvm/test/tools/llvm-mca/X86/Haswell/resources-cmpxchg.s
The file was modifiedllvm/test/tools/llvm-mca/X86/Barcelona/resources-x86_64.s
The file was modifiedllvm/test/tools/llvm-mca/X86/SandyBridge/resources-cmpxchg.s
The file was modifiedllvm/test/tools/llvm-mca/X86/SkylakeServer/resources-x86_64.s
The file was modifiedllvm/test/tools/llvm-mca/X86/Znver1/resources-cmpxchg.s
The file was modifiedllvm/test/tools/llvm-mca/X86/SkylakeClient/resources-cmpxchg.s
The file was modifiedllvm/test/tools/llvm-mca/X86/BtVer2/resources-cmpxchg.s
The file was modifiedllvm/test/tools/llvm-mca/X86/Broadwell/resources-x86_64.s
The file was modifiedllvm/test/tools/llvm-mca/X86/Generic/resources-cmpxchg.s
The file was modifiedllvm/test/tools/llvm-mca/X86/Broadwell/resources-cmpxchg.s
The file was modifiedllvm/test/tools/llvm-mca/X86/SkylakeClient/resources-x86_64.s
The file was modifiedllvm/test/tools/llvm-mca/X86/SLM/resources-x86_64.s
The file was modifiedllvm/test/tools/llvm-mca/X86/SLM/resources-cmpxchg.s
The file was modifiedllvm/test/tools/llvm-mca/X86/Atom/resources-x86_64.s
Commit e644d5e230ef34c04e9ed198a9dcc9178721a142 by jlettner
[TSan] Rename file to make it clear that it defines interceptors
Rename file `tsan_libdispatch.cpp -> tsan_libdispatch_interceptors.cpp`
to make it clear that it's main purpose is defining interceptors.
llvm-svn: 369289
The file was modifiedcompiler-rt/lib/tsan/CMakeLists.txt
The file was removedcompiler-rt/lib/tsan/rtl/tsan_libdispatch.cpp
The file was addedcompiler-rt/lib/tsan/rtl/tsan_libdispatch_interceptors.cpp
Commit 4340c2cf8fa79731d19a8a94cee87bb280c5b8aa by peter
Build symbolizer runtime with C++14.
Should hopefully fix sanitizer-x86_64-linux bot.
llvm-svn: 369290
The file was modifiedcompiler-rt/lib/sanitizer_common/symbolizer/scripts/build_symbolizer.sh
Commit 1a3fdaf6a6ee0d4ff0bb5daf80c54a9fa5594467 by asbirlea
[MemorySSA] Rename uses when inserting memory uses.
Summary: When inserting uses from outside the MemorySSA creation, we
don't normally need to rename uses, based on the assumption that there
will be no inserted Phis (if  Def existed that required a Phi, that Phi
already exists). However, when dealing with unreachable blocks,
MemorySSA will optimize away Phis whose incoming blocks are unreachable,
and these Phis end up being re-added when inserting a Use. There are two
potential solutions here: 1. Analyze the inserted Phis and clean them up
if they are unneeded
(current method for cleaning up trivial phis does not cover this) 2.
Leave the Phi in place and rename uses, the same way as whe inserting
defs. This patch use approach 2.
Resolves first test in PR42940.
Reviewers: george.burgess.iv
Subscribers: Prazek, sanjoy.google, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D66033
llvm-svn: 369291
The file was modifiedllvm/lib/Analysis/MemorySSA.cpp
The file was modifiedllvm/lib/Analysis/MemorySSAUpdater.cpp
The file was addedllvm/test/Analysis/MemorySSA/PR42940.ll
The file was modifiedllvm/include/llvm/Analysis/MemorySSAUpdater.h
The file was modifiedllvm/lib/Transforms/Scalar/LICM.cpp
Commit 19bf637eb12c119cdda9fae818813084a9cf2b2a by sbc
[WebAssembly][MC] Allow empty assembly functions
Differential Revision: https://reviews.llvm.org/D66434
llvm-svn: 369292
The file was modifiedllvm/test/MC/WebAssembly/basic-assembly.s
The file was modifiedllvm/lib/Target/WebAssembly/AsmParser/WebAssemblyAsmParser.cpp
Commit 0f4e9835c98ae68d53ebd05ac40ada41ddae68aa by Raphael Isemann
[lldb] Make TestIOHandlerCompletion more stable and document it
Instead of relying that three tabs show all completions, we should show
all remaining completions which will always stop the mode where we show
completions. Should fix this test on systems that somehow have more
completions that our normal LLDB (as they would end up being stuck in
the mode where we show completions).
llvm-svn: 369293
The file was modifiedlldb/packages/Python/lldbsuite/test/iohandler/completion/TestIOHandlerCompletion.py
Commit 056f1b5cc7c2133f0cb3e30e7f24808d321096d7 by jdoerfert
Re-apply fixed "[Attributor] Fix: Make sure we set the changed flag"
This reverts commit cedd0d9a6e4b433e1cd6585d1d4d152eb5e60b11.
Re-apply the original commit but make sure the variables are initialized
(even if they are not used) so UBSan is not complaining.
llvm-svn: 369294
The file was modifiedllvm/lib/Transforms/IPO/Attributor.cpp
Commit 928071ae4ef5e2e6342afb126518a79fde81cf8b by benny.kra
[Support] Replace sys::Mutex with their standard equivalents.
Only use a recursive mutex if it can be locked recursively.
llvm-svn: 369295
The file was modifiedllvm/lib/Support/Unix/Process.inc
The file was modifiedllvm/lib/Support/CrashRecoveryContext.cpp
The file was modifiedllvm/lib/Support/ManagedStatic.cpp
Commit 3b4ce731fbcc6490da95d8091b384c3ddb3c70d9 by apl
[lldb-vscode] add `launchCommands` to handle launch specific commands
Summary: This can help `lldb-vscode` handle launch commands associate
with remote platform attach request have field `attachCommands` to
handle attach specific commands add a corresponding one for launch
request if no launch command is provided, create a new target and
launch; otherwise, execute the launch command
Differential Revision: https://reviews.llvm.org/D65363
Patch by Wanyi Ye <kusmour@gmail.com>
llvm-svn: 369296
The file was modifiedlldb/packages/Python/lldbsuite/test/tools/lldb-vscode/lldbvscode_testcase.py
The file was modifiedlldb/packages/Python/lldbsuite/test/tools/lldb-vscode/vscode.py
The file was modifiedlldb/tools/lldb-vscode/lldb-vscode.cpp
The file was modifiedlldb/packages/Python/lldbsuite/test/tools/lldb-vscode/launch/TestVSCode_launch.py