SuccessChanges

Summary

  1. [NFC] Fixed test (details)
  2. [libc++] Use __extension__ in a portable manner (details)
  3. [NFC] Added a negative test for new fold (details)
  4. [libc++] Add `__truncating_cast` for safely casting float types to (details)
  5. Fix "enumeral and non-enumeral type in conditional expression" warnings. (details)
  6. [ModuloSchedule] Introduce PeelingModuloScheduleExpander (details)
  7. [ModuloSchedule] Fix no-asserts build (details)
  8. [clangd] Add TUScheduler.h to CodeComplete.cpp to unbreak builds (details)
  9. disassemble command: fix error message when disassembly fails (details)
  10. [libc++] Move __clamp_to_integral to <cmath>, and harden against (details)
  11. [InstCombine] add tests for insert/extract with identity shuffles; NFC (details)
  12. [PowerPC][Altivec] Fix constant argument for vec_dss (details)
  13. [ASTImporter] Added visibility context check for TypedefNameDecl. (details)
  14. [Debuginfo][SROA] Need to handle dbg.value in SROA pass. (details)
  15. [Driver] Use shared singleton instance of DriverOptTable (details)
  16. [InstSimplify] guard against unreachable code (PR43218) (details)
  17. [PowerPC][Altivec][Clang] Check compile-time constant for vec_dst* (details)
  18. [Hexagon] Improve generated code for test-if-bit-clear, one more time (details)
  19. [Attributor] Ensure AAIsDead correctly overrides getIRPosition (details)
  20. [X86] Add support for avx512bf16 for __builtin_cpu_supports and (details)
  21. Workaround TestConcurrentMany* flakiness in a more pricipled way (details)
  22. [Attributor] Deal more explicit with non-exact definitions (details)
  23. GlobalISel: Define GINodeEquiv for undef (details)
  24. [clang-tidy] Fix bugprone-argument-comment bug if there are marcos. (details)
  25. GlobalISel/TableGen: Don't skip REG_SEQUENCE based on patterns (details)
  26. AMDGPU/GlobalISel: Make 16-bit constants legal (details)
  27. [Attributor] Use the white list for attributes consistently (details)
  28. [ELF] Don't shrink RelrSection (details)
  29. [Attributor] Look at internal functions only on-demand (details)
  30. [Attributor][NFC] Add assertion to guard against accidental misuse (details)
  31. [libc++] Only build with -fvisibility=hidden on Clang (details)
  32. GlobalISel: Add G_BITREVERSE (details)
  33. Avoid assemble step in verbose-output-quoting.c (details)
  34. AMDGPU: Handle frame index expansion with no free SGPRs pre gfx9 (details)
  35. [OpenMP][Docs] Provide implementation status details (details)
  36. Upstream macCatalyst support in debugserver and the macOS dynamic loader (details)
  37. [Instruction] Add hasMetadata(Kind) helper [NFC] (details)
  38. [InstCombine] Fold sub (and A, B) (or A, B)) to neg (xor A, B) (details)
  39. Add encode and decode methods to InlineInfo and document encoding format (details)
  40. [X86] Pre-commit test cases and test run line changes for D67087 (details)
  41. [NFC] Adjust test filename (details)
  42. [NFC] Added tests for new fold (details)
  43. Update CodeGen to use hasMetadata as appropriate [NFC] (details)
  44. [OpenMP] Change initialization of __kmp_global (details)
  45. [InstCombine] sub(xor(x, y), or(x, y)) -> neg(and(x, y)) (details)
  46. [TargetLibraryInfo] Define enumerator for no library function (NFC) (details)
  47. [NFC] Switch last couple of invariant_load checks to use hasMetadata (details)
  48. [docs] Add some comments to the inline LLJIT example. (details)
  49. [JITLink] Fix the show-timers option on llvm-jitlink. (details)
  50. [Python] Fix whitespace before making changes (NFC) (details)
  51. [Python] Implement truth testing for lldb.value (details)
  52. [Python] Implement __next__ for value_iter (details)
  53. [globalisel] Support trivial COPY in GISelKnownBits (details)
  54. [Attributor][Fix] Ensure the attribute names are created properly (details)
  55. [MemorySSA] Re-enable MemorySSA use. (details)
  56. Revert "[test] Address TestConcurrentMany*.py flakiness on macOS" (details)
  57. [WebAssembly] Initialize memory in start function (details)
  58. [InstCombine] Add more test cases (NFC) (details)
  59. [llvm-rtdyld] Add timers to match llvm-jitlink. (details)
  60. [llvm-rtdyld][llvm-jitlink] Rename struct member to remove ambiguity. (details)
  61. Generate parent context id from Decl* instead of DeclContext*. (details)
  62. [NewPM][Sancov] Make Sancov a Module Pass instead of 2 Passes (details)
  63. [c++20] P1143R2: Add support for the C++20 'constinit' keyword. (details)
  64. [LLD] [COFF] Implement MinGW default manifest handling (details)
  65. [Attributor][Fix] Make sure we do not delete live code (details)
  66. [Attributor][Stats] Use the right statistics macro (details)
  67. GlobalISel: Add basic legalization for G_BITREVERSE (details)
  68. AMDGPU/GlobalISel: Select G_BITREVERSE (details)
  69. [DebugInfo] Emit DW_TAG_enumeration_type for referenced global (details)
  70. Diagnose _Atomic as a C11 extension. (details)
  71. [test] Escape path to match the literal string (details)
  72. [mir-canon][NFC] Move MIR vreg renaming code to separate file for better (details)
  73. [www] Update attribute reference for 'constinit'. (details)
  74. [www] Fix hyperlink syntax in attribute reference. (details)
  75. gn build: Merge r370985 (details)
  76. For PR43213, track whether template parameters are implicit through (details)
  77. [Disassembler] Simplify a few methods (NFC) (details)
  78. [AArch64][GlobalISel] Teach AArch64CallLowering to handle basic sibling (details)
  79. [Disassembler] Simplify a few methods (2/2) (NFC) (details)
  80. Use -mtriple to fix AMDGPU test sensitive to object file format (details)
  81. Reformat the beginning of the testing doc to make clear how to run all (details)
  82. [analyzer] scan-build: handle --sysroot=/path in addition to --sysroot (details)
  83. Revert "Revert "[builtins] Rounding mode support for addxf3/subxf3"" (details)
  84. [c++20] Fix some ambiguities in our mangling of lambdas with explicit (details)
  85. [mir-canon][NFC] Adding -verify-machineinstrs to mir-canon tests. (details)
  86. AMDGPU/GlobalISel: Fix assert on load from constant address (details)
  87. AMDGPU/GlobalISel: Fix placeholder value used for addrspacecast (details)
  88. AMDGPU/GlobalISel: Restore insert point when getting aperture (details)
  89. AMDGPU: Add intrinsics for address space identification (details)
  90. AMDGPU: Add builtins for is_shared/is_private (details)
  91. Align output segments correctly (details)
  92. [DWARF] Support DWARF64 in DWARFListTableHeader. (details)
  93. [dotest] Delete trivial inline test makefiles (details)
  94. [DWARF] Fix referencing Range List Tables from CUs for DWARF64. (details)
  95. Breakpad: Basic support for STACK WIN unwinding (details)
  96. Obliterate LLDB_CONFIGURATION_BUILDANDINTEGRATION (details)
  97. [dotest] Centralize initialization commands even more (details)
  98. [dotest] Remove top-level Makefile (details)
  99. Rename of constants in ASTImporterVisibilityTest. NFC. (details)
  100. [clang-tidy] Fix definitions in headers check to respect qualifiers (details)
  101. [lib/ObjectYAML] - Stop calling error(1) when mapping the st_other field (details)
  102. Revert r371023 "[lib/ObjectYAML] - Stop calling error(1) when mapping (details)
  103. Revert r371023 "[lib/ObjectYAML] - Stop calling error(1) when mapping (details)
  104. Revert r361885 "[Driver] Fix -working-directory issues" (details)
  105. [lldb][NFC] Stabilize gui/basic test by waiting on prompt (details)
  106. Recommit r371023 "[lib/ObjectYAML] - Stop calling error(1) when mapping (details)
  107. [Sema] Refactor LookupVisibleDecls. NFC (details)
  108. [lib/ObjectYAML] - Cleanup the private interface of ELFState<ELFT>. (details)
  109. Win: handle \\?\UNC\ prefix in realPathFromHandle (PR43204) (details)
  110. [clangd][vscode] Make SemanticHighlightingFeature more self-contained. (details)
  111. [clangd][vscode] Add a flag to enable semantic highlighting in clangd (details)
  112. Fix time-trace breaking flame graph assumptions (details)
  113. [libclang] Refactored SharedParsedRegionsStorage (details)
  114. [LLVM][Alignment] Make functions using log of alignment explicit (details)
  115. [OpenCL] Add image type handling for builtins (details)
  116. [X86] X86InstrInfo::optimizeCompareInstr - fix potential null (details)
  117. [SystemZ]  Recognize INLINEASM_BR in backend (details)
  118. [X86] X86SpeculativeLoadHardeningPass::canHardenRegister - fix out of (details)
  119. Revert rL370996 from llvm/trunk: [AArch64][GlobalISel] Teach (details)
  120. [MIPS GlobalISel] Lower SRet pointer arguments (details)
  121. [MIPS GlobalISel] Select llvm.trap intrinsic (details)
  122. [MIPS GlobalISel] Select G_FENCE (details)
  123. [X86][SSE] Add (failing) test case for PR43227 (details)
Commit 13dadedc2945e3b0147b862d85ffb0a08cffd24e by david.bolvansky
[NFC] Fixed test
llvm-svn: 370888
The file was modifiedllvm/test/Transforms/InstCombine/sub-and-or-not-xor.ll
Commit 801f6a495c6a1d061458df67a1d804c4778437d6 by Louis Dionne
[libc++] Use __extension__ in a portable manner
llvm-svn: 370889
The file was modifiedlibcxx/include/__config
The file was modifiedlibcxx/include/atomic
Commit b9e9478244f7bc6dcbce86a16451b5a8ba4d82cd by david.bolvansky
[NFC] Added a negative test for new fold
llvm-svn: 370890
The file was modifiedllvm/test/Transforms/InstCombine/sub-and-or-not-xor.ll
Commit e8316372b91e182ba9c7b4bae3bf2ddeff1065cc by Louis Dionne
[libc++] Add `__truncating_cast` for safely casting float types to
integers
This is needed anytime we need to clamp an arbitrary floating point
value to an integer type.
Thanks to Eric Fiselier for the patch.
Differential Revision: https://reviews.llvm.org/D66836
llvm-svn: 370891
The file was modifiedlibcxx/include/math.h
The file was addedlibcxx/test/libcxx/numerics/clamp_to_integral.pass.cpp
Commit 92e13f2eabebc60644d36283cc40d2433d035b6e by llvm-dev
Fix "enumeral and non-enumeral type in conditional expression" warnings.
NFCI.
llvm-svn: 370892
The file was modifiedllvm/tools/llvm-objcopy/ELF/ELFObjcopy.cpp
The file was modifiedllvm/tools/llvm-objcopy/CopyConfig.cpp
Commit fef9f59055792e98ca619284a1fae4bfc5f959ef by jmolloy
[ModuloSchedule] Introduce PeelingModuloScheduleExpander
This is the beginnings of a reimplementation of ModuloScheduleExpander.
It works by generating a single-block correct pipelined kernel and then
peeling out the prolog and epilogs.
This patch implements kernel generation as well as a validator that will
confirm the number of phis added is the same as the
ModuloScheduleExpander.
Prolog and epilog peeling will come in a different patch.
Differential Revision: https://reviews.llvm.org/D67081
llvm-svn: 370893
The file was modifiedllvm/include/llvm/CodeGen/ModuloSchedule.h
The file was modifiedllvm/lib/CodeGen/MachinePipeliner.cpp
The file was modifiedllvm/lib/CodeGen/ModuloSchedule.cpp
Commit 11f0f7f583c9565256750b50784b28b1ba3edd90 by jmolloy
[ModuloSchedule] Fix no-asserts build
Apologies, due to a git SNAFU this fix (dump doesn't exist and silence
unused variables) stayed in my index rather than applying to rL370893.
llvm-svn: 370894
The file was modifiedllvm/lib/CodeGen/ModuloSchedule.cpp
Commit f1b3cd6c908780d662e47ac2434b3c51299f6955 by kadircet
[clangd] Add TUScheduler.h to CodeComplete.cpp to unbreak builds
llvm-svn: 370895
The file was modifiedclang-tools-extra/clangd/CodeComplete.cpp
Commit 052297524624db02eff91252c582037dc99c0528 by pavel
disassemble command: fix error message when disassembly fails
We were printing the start_addr field, which is not correct, as in this
branch we are processing the memory described by cur_range. Print that
instead.
Ideally, in particular this case, the error message would also say
something about not being able to disassemble due to not having found
the module from the core file, but that is not easy to do right now, so
I'm leaving that for another time.
llvm-svn: 370898
The file was modifiedlldb/source/Commands/CommandObjectDisassemble.cpp
The file was addedlldb/lit/Minidump/lit.local.cfg
The file was addedlldb/lit/Minidump/disassemble-no-module.yaml
Commit b92deded87ad2a98d331d23fca98a03b70c15022 by Louis Dionne
[libc++] Move __clamp_to_integral to <cmath>, and harden against
min()/max() macros
llvm-svn: 370900
The file was modifiedlibcxx/include/cmath
The file was addedlibcxx/test/libcxx/numerics/c.math/undef_min_max.pass.cpp
The file was modifiedlibcxx/include/math.h
Commit 791949afe56027404a4c0bc605f7e72cc272b41a by spatel
[InstCombine] add tests for insert/extract with identity shuffles; NFC
llvm-svn: 370901
The file was modifiedllvm/test/Transforms/InstCombine/insert-extract-shuffle.ll
Commit 5309189d9b3e03f68fdd04b4372fc73ddc07f98e by Jinsong Ji
[PowerPC][Altivec] Fix constant argument for vec_dss
Summary: This is similar to vec_ct* in
https://reviews.llvm.org/rL304205.
The argument must be a constant, otherwise instruction selection will
fail. always_inline is not enough for isel to always fold everything
away at -O0.
The fix is to turn the function into macros in altivec.h.
Fixes https://bugs.llvm.org/show_bug.cgi?id=43072
Reviewers: nemanjai, hfinkel, #powerpc, wuzish
Reviewed By: #powerpc, wuzish
Subscribers: wuzish, kbarton, MaskRay, shchenz, cfe-commits
Tags: #clang
Differential Revision: https://reviews.llvm.org/D66699
llvm-svn: 370902
The file was modifiedclang/lib/Headers/altivec.h
The file was addedclang/test/CodeGen/altivec-dss.c
The file was modifiedclang/lib/Sema/SemaChecking.cpp
The file was modifiedclang/test/CodeGen/builtins-ppc-error.c
The file was modifiedclang/include/clang/Basic/BuiltinsPPC.def
Commit c86d47b6b6fbece30c5ef7232a72c0d0453837cb by 1.int32
[ASTImporter] Added visibility context check for TypedefNameDecl.
Summary: ASTImporter makes now difference between typedefs and type
aliases with same name in different translation units if these are not
visible outside.
Reviewers: martong, a.sidorin, shafik, a_sidorin
Reviewed By: martong, shafik
Subscribers: rnkovacs, dkrupp, Szelethus, gamesh411, cfe-commits
Tags: #clang
Differential Revision: https://reviews.llvm.org/D64480
llvm-svn: 370903
The file was modifiedclang/unittests/AST/ASTImporterVisibilityTest.cpp
The file was modifiedclang/lib/AST/ASTImporter.cpp
Commit cbf1f3b771c8c0e0858deafe5f9457fb838ff2c2 by a.v.lapshin
[Debuginfo][SROA] Need to handle dbg.value in SROA pass.
SROA pass processes debug info incorrecly if applied twice.
Specifically, after SROA works first time, instcombine converts
dbg.declare intrinsics into dbg.value. Inlining creates new
opportunities for SROA, so it is called again. This time it does not
handle correctly previously inserted dbg.value intrinsics.
Differential Revision: https://reviews.llvm.org/D64595
llvm-svn: 370906
The file was addedllvm/test/DebugInfo/X86/sroa-after-inlining.ll
The file was modifiedllvm/lib/Transforms/Utils/Local.cpp
The file was modifiedllvm/test/Transforms/InstCombine/lower-dbg-declare.ll
The file was modifiedllvm/test/Transforms/Util/simplify-dbg-declare-load.ll
Commit 433927595dde3821c76b33725aab8ccd472a5137 by ibiryukov
[Driver] Use shared singleton instance of DriverOptTable
Summary: This significantly reduces the time required to run clangd
tests, by
~10%.
Should also have an effect on other tests that run command-line parsing
multiple times inside a single invocation.
Reviewers: gribozavr, sammccall
Reviewed By: sammccall
Subscribers: kadircet, cfe-commits
Tags: #clang
Differential Revision: https://reviews.llvm.org/D67163
llvm-svn: 370908
The file was modifiedclang/tools/driver/driver.cpp
The file was modifiedclang/lib/Tooling/InterpolatingCompilationDatabase.cpp
The file was modifiedclang/lib/Driver/DriverOptions.cpp
The file was modifiedclang/include/clang/Driver/Driver.h
The file was modifiedclang/lib/Driver/Driver.cpp
The file was modifiedclang/lib/FrontendTool/ExecuteCompilerInvocation.cpp
The file was modifiedclang/tools/driver/cc1as_main.cpp
The file was modifiedclang/lib/Tooling/Tooling.cpp
The file was modifiedclang/tools/clang-check/ClangCheck.cpp
The file was modifiedclang-tools-extra/modularize/Modularize.cpp
The file was modifiedclang/include/clang/Driver/Options.h
The file was modifiedclang/lib/Frontend/CompilerInvocation.cpp
Commit 4a2cd7be5a6fbca1be111ad56927e0dfc3185f88 by spatel
[InstSimplify] guard against unreachable code (PR43218)
This would crash: https://bugs.llvm.org/show_bug.cgi?id=43218
llvm-svn: 370911
The file was modifiedllvm/test/Transforms/InstSimplify/insertelement.ll
The file was modifiedllvm/lib/Transforms/Scalar/InstSimplifyPass.cpp
Commit a71c199f82cd3309dd9a1a18d01c28437e672fe3 by Jinsong Ji
[PowerPC][Altivec][Clang] Check compile-time constant for vec_dst*
Summary: This is follow up of https://reviews.llvm.org/D66699. We might
get ISEL ICE if we call vec_dss with non const 3rd arg.
``` Cannot select: intrinsic %llvm.ppc.altivec.dst
```
We should check the constraints in clang and generate better error
messages.
Reviewers: nemanjai, hfinkel, echristo, #powerpc, wuzish
Reviewed By: #powerpc, wuzish
Subscribers: wuzish, kbarton, MaskRay, shchenz, cfe-commits
Tags: #clang
Differential Revision: https://reviews.llvm.org/D66748
llvm-svn: 370912
The file was modifiedclang/lib/Sema/SemaChecking.cpp
The file was modifiedclang/test/CodeGen/builtins-ppc-error.c
The file was modifiedclang/include/clang/Basic/BuiltinsPPC.def
Commit 08a09822a5cb95940cfe11fc885840916c516dc4 by kparzysz
[Hexagon] Improve generated code for test-if-bit-clear, one more time
Adjust isel patterns after recent commit. Fixes
https://llvm.org/PR43194.
llvm-svn: 370913
The file was modifiedllvm/test/CodeGen/Hexagon/tstbit.ll
The file was modifiedllvm/lib/Target/Hexagon/HexagonPatterns.td
The file was modifiedllvm/test/CodeGen/Hexagon/isel-prefer.ll
Commit b8cfdcfd9d79ee3c4aebd322a86d53bde1e69281 by llvm-dev
[Attributor] Ensure AAIsDead correctly overrides getIRPosition
As commented on D65712, the getIRPosition methods weren't correctly
being overridden.
Differential Revision: https://reviews.llvm.org/D67170
llvm-svn: 370914
The file was modifiedllvm/include/llvm/Transforms/IPO/Attributor.h
Commit 5465875e9361b58a357c118884ca09340236a664 by craig.topper
[X86] Add support for avx512bf16 for __builtin_cpu_supports and
compiler-rt's cpu indicator.
llvm-svn: 370915
The file was modifiedllvm/include/llvm/Support/X86TargetParser.def
The file was modifiedcompiler-rt/lib/builtins/cpu_model.c
The file was modifiedllvm/lib/Support/Host.cpp
The file was modifiedclang/test/CodeGen/target-builtin-noerror.c
Commit cc5b509b9edacf7fa9af455b69af1f4357a668db by Fred Riss
Workaround TestConcurrentMany* flakiness in a more pricipled way
The flakiness on our local machines seems to come for a race in the
kernel between task_suspend and the creation of the Mach exceptions for
the threads that hit breakpoints. The debugserver code is written with
the assumption that the kernel will be able to provide us with all the
exceptions for a given task once task_suspend returns. On machines with
higher core counts, this seems not to be the case. The first batch of
exceptions we get after task_suspend does not contain exceptions for all
the threads that have hit a breakpoint, thus they get misreprorted in
the first stop packet.
Adding a 1ms timeout to the call that retrieves the batch of exceptions
seems to workaround the issue reliably on our machines, and it shoulnd't
impact standard debugging scenarios too much (a stop will incur an
additional 1ms delay). We'll be talking to the kernel team to figure out
the right contract for those APIs.
This patch also reverts part of Jonas' previous workaround for the issue
(r370785).
llvm-svn: 370916
The file was modifiedlldb/tools/debugserver/source/MacOSX/MachTask.mm
The file was modifiedlldb/packages/Python/lldbsuite/test/make/pseudo_barrier.h
Commit b0412e437c3f505c836f3338afb45dff73e7c709 by jdoerfert
[Attributor] Deal more explicit with non-exact definitions
Summary: Before we tried to rule out non-exact definitions early but
that lead to on-demand attributes created for them anyway. As a
consequence we needed to look at the definition in the initialize of
each attribute again. This patch centralized this lookup and tightens
the condition under which we give up on non-exact definitions.
Reviewers: uenoku, sstefan1
Subscribers: hiraditya, bollu, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D67115
llvm-svn: 370917
The file was modifiedllvm/test/Transforms/FunctionAttrs/nounwind.ll
The file was modifiedllvm/test/Transforms/FunctionAttrs/arg_returned.ll
The file was modifiedllvm/lib/Transforms/IPO/Attributor.cpp
The file was modifiedllvm/test/Transforms/FunctionAttrs/noreturn_async.ll
The file was modifiedllvm/test/Transforms/FunctionAttrs/nonnull.ll
The file was modifiedllvm/include/llvm/Transforms/IPO/Attributor.h
Commit 80913a70f5492bd42732ab7c98564d2590820cfd by Matthew.Arsenault
GlobalISel: Define GINodeEquiv for undef
AMDGPU uses this for undef vector elements in some patterns which will
be enabled in a future patch.
llvm-svn: 370918
The file was modifiedllvm/include/llvm/Target/GlobalISel/SelectionDAGCompat.td
Commit 240a2e25c6ded8b68b33751286180de7b242bf42 by alexfh
[clang-tidy] Fix bugprone-argument-comment bug if there are marcos.
Summary: Fix bugprone-argument-comment bug if there are marcos.
For example:
``` void j(int a, int b, int c); j(X(1), /*b=*/1, X(1));
```
clang-tidy can't recognize comment "/*b=*/". It suggests fix like this:
``` j(X(1), /*b=*//*b=*/1, X(1));
```
This change tries to fix this issue.
Reviewers: alexfh, hokein, aaron.ballman
Reviewed By: alexfh
Subscribers: xazax.hun, cfe-commits
Tags: #clang, #clang-tools-extra
Patch by Yubo Xie.
Differential Revision: https://reviews.llvm.org/D67080
llvm-svn: 370919
The file was modifiedclang-tools-extra/test/clang-tidy/bugprone-argument-comment-literals.cpp
The file was modifiedclang-tools-extra/clang-tidy/bugprone/ArgumentCommentCheck.cpp
Commit 38fb34443ced261cc201a2e5f1dd55cf979185ed by Matthew.Arsenault
GlobalISel/TableGen: Don't skip REG_SEQUENCE based on patterns
This partially adds support for patterns with REG_SEQUENCE. The source
patterns are now accepted, but the pattern is still rejected due to
missing support for the instruction renderer.
llvm-svn: 370920
The file was modifiedllvm/utils/TableGen/GlobalISelEmitter.cpp
Commit d9af712da44d960c58310718d9ccbf7056566b98 by Matthew.Arsenault
AMDGPU/GlobalISel: Make 16-bit constants legal
This is mostly for the benefit of patterns which use 16-bit constants.
llvm-svn: 370921
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-fconstant.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/artifact-combiner-sext.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-ashr.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-extract.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-fcmp.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-merge-values.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-fcopysign.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/artifact-combiner-zext.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-constant.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-extract-vector-elt.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-implicit-def.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-smax.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-lshr.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-smin.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-umin.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-phi.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-umax.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-select.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-icmp.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-shl.mir
Commit 97fd582b91581f0b4cb10c77813f1a284bd69a92 by jdoerfert
[Attributor] Use the white list for attributes consistently
Summary: We create attributes on-demand so we need to check the white
list on-demand. This also unifies the location at which we create,
initialize, and eventually invalidate new abstract attributes.
The tests show mixed results, a few more call site attributes are
determined which can cause more iterations.
Reviewers: uenoku, sstefan1
Subscribers: hiraditya, bollu, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D66913
llvm-svn: 370922
The file was modifiedllvm/test/Transforms/FunctionAttrs/nosync.ll
The file was modifiedllvm/test/Transforms/FunctionAttrs/willreturn.ll
The file was modifiedllvm/lib/Transforms/IPO/Attributor.cpp
The file was modifiedllvm/test/Transforms/FunctionAttrs/arg_nocapture.ll
The file was modifiedllvm/test/Transforms/FunctionAttrs/nofree-attributor.ll
The file was modifiedllvm/test/Transforms/FunctionAttrs/nounwind.ll
The file was modifiedllvm/test/Transforms/FunctionAttrs/read_write_returned_arguments_scc.ll
The file was modifiedllvm/test/Transforms/FunctionAttrs/nonnull.ll
The file was modifiedllvm/test/Transforms/FunctionAttrs/noreturn_async.ll
The file was modifiedllvm/test/Transforms/FunctionAttrs/liveness.ll
The file was modifiedllvm/test/Transforms/FunctionAttrs/align.ll
The file was modifiedllvm/test/Transforms/FunctionAttrs/dereferenceable.ll
The file was modifiedllvm/include/llvm/Transforms/IPO/Attributor.h
Commit 7afffb54eac8c7aedc8c24f75ccdd70b176a9d9f by maskray
[ELF] Don't shrink RelrSection
Fixes PR43214.
The size of SHT_RELR may oscillate between 2 numbers (see D53003 for a
similar --pack-dyn-relocs=android issue). This can happen if the shrink
of SHT_RELR causes it to take more words to encode relocation offsets
(this can happen with thunks or segments with overlapping p_offset
ranges), and the expansion of SHT_RELR causes it to take fewer words to
encode relocation offsets.
To avoid the issue, add padding 1s to the end of the relocation section
if its size would decrease. Trailing 1s do not decode to more
relocations.
Reviewed By: peter.smith
Differential Revision: https://reviews.llvm.org/D67164
llvm-svn: 370923
The file was modifiedlld/ELF/SyntheticSections.cpp
The file was addedlld/test/ELF/pack-dyn-relocs-relr-loop.s
Commit 2f6220633c71913f6b85c5f82cb793fc911efbeb by jdoerfert
[Attributor] Look at internal functions only on-demand
Summary: Instead of building attributes for internal functions which we
do not update as long as we assume they are dead, we now do not create
attributes until we assume the internal function to be live. This
improves the number of required iterations, as well as the number of
required updates, in real code. On our tests, the results are mixed.
Reviewers: sstefan1, uenoku
Subscribers: hiraditya, bollu, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D66914
llvm-svn: 370924
The file was modifiedllvm/test/Transforms/FunctionAttrs/internal-noalias.ll
The file was modifiedllvm/test/Transforms/FunctionAttrs/read_write_returned_arguments_scc.ll
The file was modifiedllvm/lib/Transforms/IPO/Attributor.cpp
The file was modifiedllvm/test/Transforms/FunctionAttrs/liveness.ll
The file was modifiedllvm/include/llvm/Transforms/IPO/Attributor.h
Commit 912edafcf146353997a40466606b730d60f9f8d2 by jdoerfert
[Attributor][NFC] Add assertion to guard against accidental misuse
llvm-svn: 370925
The file was modifiedllvm/include/llvm/Transforms/IPO/Attributor.h
Commit 5afc5a6c1b98f0c93eb1f9902d96e13b58b54a0c by Louis Dionne
[libc++] Only build with -fvisibility=hidden on Clang
The visibility annotations in libc++ are not quite right for GCC, which
results in symbols not being exported when -fvisibility=hidden is used.
To fix the GCC build bots, this commit reverts to the previous state of
not building with hidden visibility on GCC.
In the future, we can build with hidden visibility all the time and
export symbols explicitly using a list. See https://llvm.org/D66970 for
one take at this.
llvm-svn: 370926
The file was modifiedlibcxx/src/CMakeLists.txt
Commit 70becc20fa3a957aa78ce52b1a4dc354cf4e460d by Matthew.Arsenault
GlobalISel: Add G_BITREVERSE
This is the first failing pattern for AMDGPU and is trivial to handle.
llvm-svn: 370927
The file was modifiedllvm/include/llvm/Target/GenericOpcodes.td
The file was modifiedllvm/include/llvm/Support/TargetOpcodes.def
The file was modifiedllvm/test/CodeGen/AArch64/GlobalISel/legalizer-info-validation.mir
The file was modifiedllvm/test/CodeGen/AArch64/GlobalISel/arm64-irtranslator.ll
The file was modifiedllvm/lib/CodeGen/GlobalISel/IRTranslator.cpp
The file was modifiedllvm/include/llvm/Target/GlobalISel/SelectionDAGCompat.td
Commit e6b26f2f91a3b80d6ee726ee1b6147d72252cc55 by Yuanfang Chen
Avoid assemble step in verbose-output-quoting.c
Reviewers: hans
Subscribers: cfe-commits
Tags: #clang
Differential Revision: https://reviews.llvm.org/D65527
llvm-svn: 370928
The file was modifiedclang/test/Driver/verbose-output-quoting.c
Commit 84489b34f6f147b4de6127441f3051e0d0e08364 by Matthew.Arsenault
AMDGPU: Handle frame index expansion with no free SGPRs pre gfx9
Since an add instruction must produce an unused carry out, this requires
additional SGPRs. This can be avoided by keeping the entire offset
computation in SGPRs. If one SGPR is still available, this only costs
one extra mov. If none are available, the entire computation can be done
in place and reversed.
This does assume the use is a VGPR operand. This was already assumed,
and we currently only select frame indexes to VALU instructions. This
should probably be fixed at some point to handle more possible MIR.
llvm-svn: 370929
The file was addedllvm/test/CodeGen/AMDGPU/pei-scavenge-sgpr-carry-out.mir
The file was modifiedllvm/lib/Target/AMDGPU/SIRegisterInfo.cpp
The file was modifiedllvm/lib/Target/AMDGPU/SIInstrInfo.cpp
Commit 40fe351cf699eda8d7d9a72c7bbbb37cef7f3164 by jdoerfert
[OpenMP][Docs] Provide implementation status details
This adds a more fine-grained list of OpenMP features with their
implementation status and associated reviews/commits.
Reviewers: kkwli0, ABataev, RaviNarayanaswamy, gtbercea, Hahnfeld
Subscribers: bollu, guansong, jfb, hfinkel, cfe-commits
Tags: #clang
Differential Revision: https://reviews.llvm.org/D64375
llvm-svn: 370930
The file was modifiedclang/docs/OpenMPSupport.rst
Commit 2461061168f4ac4ca8a1823768a00d1c63355b1b by Adrian Prantl
Upstream macCatalyst support in debugserver and the macOS dynamic loader
plugin.
Unfortunately the test is currently XFAILed because of missing changes
to the clang driver.
Differential Revision: https://reviews.llvm.org/D67124
llvm-svn: 370931
The file was modifiedlldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationClient.h
The file was addedlldb/packages/Python/lldbsuite/test/macosx/macabi/dylib.mk
The file was addedlldb/packages/Python/lldbsuite/test/macosx/macabi/foo.h
The file was modifiedlldb/packages/Python/lldbsuite/test/tools/lldb-server/TestGdbRemoteHostInfo.py
The file was modifiedlldb/include/lldb/Target/Process.h
The file was modifiedlldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationServerCommon.cpp
The file was modifiedlldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationClient.cpp
The file was addedlldb/packages/Python/lldbsuite/test/macosx/macabi/foo.c
The file was modifiedlldb/include/lldb/Host/macosx/HostInfoMacOSX.h
The file was addedlldb/packages/Python/lldbsuite/test/macosx/macabi/main.c
The file was modifiedlldb/include/lldb/Core/Module.h
The file was addedlldb/packages/Python/lldbsuite/test/macosx/macabi/TestMacABImacOSFramework.py
The file was modifiedlldb/packages/Python/lldbsuite/test/make/Makefile.rules
The file was modifiedlldb/source/Plugins/DynamicLoader/MacOSX-DYLD/DynamicLoaderDarwin.h
The file was modifiedlldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.h
The file was modifiedlldb/tools/debugserver/source/MacOSX/MachProcess.mm
The file was modifiedlldb/source/Plugins/DynamicLoader/MacOSX-DYLD/DynamicLoaderDarwin.cpp
The file was modifiedlldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp
The file was modifiedlldb/source/Host/macosx/objcxx/HostInfoMacOSX.mm
The file was modifiedlldb/source/Core/Module.cpp
The file was addedlldb/packages/Python/lldbsuite/test/macosx/macabi/Makefile
Commit 27820f99091d6547ed83ff20a2ea689ec68b9bf3 by listmail
[Instruction] Add hasMetadata(Kind) helper [NFC]
It's a common idiom, so let's add the obvious wrapper for metadata kinds
which are basically booleans.
llvm-svn: 370933
The file was modifiedllvm/lib/Transforms/Instrumentation/HWAddressSanitizer.cpp
The file was modifiedllvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
The file was modifiedllvm/lib/Transforms/Scalar/LoopPredication.cpp
The file was modifiedllvm/include/llvm/IR/Instruction.h
The file was modifiedllvm/lib/Transforms/Utils/ImportedFunctionsInliningStatistics.cpp
The file was modifiedllvm/lib/Transforms/Scalar/EarlyCSE.cpp
The file was modifiedllvm/lib/Analysis/MemoryDependenceAnalysis.cpp
Commit 0e07248704fa97f6c7d9e007f82db17116fbaf78 by david.bolvansky
[InstCombine] Fold sub (and A, B) (or A, B)) to neg (xor A, B)
Summary:
``` Name: sub(and(x, y), or(x, y)) -> neg(xor(x, y))
%or = or i32 %y, %x
%and = and i32 %x, %y
%sub = sub i32 %and, %or
=>
%sub1 = xor i32 %x, %y
%sub = sub i32 0, %sub1
Optimization: sub(and(x, y), or(x, y)) -> neg(xor(x, y)) Done: 1
Optimization is correct!
```
https://rise4fun.com/Alive/VI6
Found by @lebedev.ri. Also author of the proof.
Reviewers: lebedev.ri, spatel
Reviewed By: lebedev.ri
Subscribers: llvm-commits, lebedev.ri
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D67155
llvm-svn: 370934
The file was modifiedllvm/test/Transforms/InstCombine/sub-and-or-not-xor.ll
The file was modifiedllvm/lib/Transforms/InstCombine/InstCombineAddSub.cpp
Commit 7d0a545ee65eb181c28066dc06fc3fb9443a653e by clayborg
Add encode and decode methods to InlineInfo and document encoding format
to the GSYM file format.
This patch adds the ability to encode and decode InlineInfo objects and
adds test coverage. Error handling is introduced in the encoding and
decoding which will be used from here on out for remaining patches.
Differential Revision: https://reviews.llvm.org/D66600
llvm-svn: 370936
The file was modifiedllvm/lib/DebugInfo/GSYM/InlineInfo.cpp
The file was modifiedllvm/include/llvm/DebugInfo/GSYM/InlineInfo.h
The file was modifiedllvm/unittests/DebugInfo/GSYM/GSYMTest.cpp
The file was modifiedllvm/include/llvm/DebugInfo/GSYM/Range.h
The file was modifiedllvm/lib/DebugInfo/GSYM/Range.cpp
Commit f0081dac81b38d7fff291515746a3e5bb875a076 by craig.topper
[X86] Pre-commit test cases and test run line changes for D67087
llvm-svn: 370937
The file was modifiedllvm/test/CodeGen/X86/combine-sdiv.ll
The file was modifiedllvm/test/CodeGen/X86/twoaddr-coalesce-3.ll
The file was modifiedllvm/test/CodeGen/X86/combine-srem.ll
The file was modifiedllvm/test/CodeGen/X86/rem.ll
The file was modifiedllvm/test/CodeGen/X86/srem-seteq.ll
Commit 2ceb00db768c8f423b4fdfe99cb00ad45cf59ac4 by david.bolvansky
[NFC] Adjust test filename
llvm-svn: 370939
The file was removedllvm/test/Transforms/InstCombine/sub-and-or-not-xor.ll
The file was addedllvm/test/Transforms/InstCombine/sub-and-or-neg-xor.ll
Commit f6233d90f0d82a99bcd9b2f1bd4aeea0a1933a48 by david.bolvansky
[NFC] Added tests for new fold
llvm-svn: 370941
The file was addedllvm/test/Transforms/InstCombine/sub-xor-or-neg-and.ll
Commit 3a49ca331fa2ac8d3d7bc231ea2b671588ad476a by listmail
Update CodeGen to use hasMetadata as appropriate [NFC]
My intial grepping for rL370933 missed a directory worth of cases.
llvm-svn: 370942
The file was modifiedllvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
The file was modifiedllvm/lib/CodeGen/SelectionDAG/FastISel.cpp
Commit 673e5476a817e93440e4b269df8bcb0d4b8aae14 by hahnjo
[OpenMP] Change initialization of __kmp_global
There's no need to initialize variables with static storage duration
because they're implicitly initialized to zero. See
https://en.cppreference.com/w/c/language/initialization#Implicit_initialization
I think that's already relied upon because the supplied 0 only sets
'kmp_time_global_t g_time;' in 'struct kmp_base_global'. The other
fields are not set in the code, but implicitly initialized by the
compiler.
Differential Revision: https://reviews.llvm.org/D66292
llvm-svn: 370943
The file was modifiedopenmp/runtime/src/kmp_global.cpp
The file was modifiedopenmp/runtime/cmake/config-ix.cmake
The file was modifiedopenmp/runtime/cmake/LibompHandleFlags.cmake
Commit 420cbb6190e97d470ddb12a3136af148a7d5e841 by david.bolvansky
[InstCombine] sub(xor(x, y), or(x, y)) -> neg(and(x, y))
Summary:
``` Name: sub(xor(x, y), or(x, y)) -> neg(and(x, y))
%or = or i32 %y, %x
%xor = xor i32 %x, %y
%sub = sub i32 %xor, %or
=>
%sub1 = and i32 %x, %y
%sub = sub i32 0, %sub1
Optimization: sub(xor(x, y), or(x, y)) -> neg(and(x, y)) Done: 1
Optimization is correct!
```
https://rise4fun.com/Alive/8OI
Reviewers: lebedev.ri
Reviewed By: lebedev.ri
Subscribers: llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D67188
llvm-svn: 370945
The file was modifiedllvm/test/Transforms/InstCombine/sub-xor-or-neg-and.ll
The file was modifiedllvm/lib/Transforms/InstCombine/InstCombineAddSub.cpp
Commit 3b705ef712cf92fdcbc9fc0abed254b32d615397 by e.menezes
[TargetLibraryInfo] Define enumerator for no library function (NFC)
Add a null enumerator do designate no library function.
llvm-svn: 370947
The file was modifiedllvm/lib/Analysis/TargetLibraryInfo.cpp
The file was modifiedllvm/include/llvm/Analysis/TargetLibraryInfo.h
Commit 4228245e41197528c3aeb7f6dbf03b6e873d16af by listmail
[NFC] Switch last couple of invariant_load checks to use hasMetadata
llvm-svn: 370948
The file was modifiedllvm/lib/Transforms/Scalar/LICM.cpp
The file was modifiedllvm/lib/Transforms/Scalar/EarlyCSE.cpp
The file was modifiedllvm/lib/Transforms/Vectorize/LoadStoreVectorizer.cpp
The file was modifiedllvm/lib/Analysis/MemorySSA.cpp
Commit e4526330b39e16bec316ebb397c270fdcf574704 by Lang Hames
[docs] Add some comments to the inline LLJIT example.
llvm-svn: 370950
The file was modifiedllvm/docs/ORCv2.rst
Commit 200415c6dcc5e0febe3e574970ef89e0c510465b by Lang Hames
[JITLink] Fix the show-timers option on llvm-jitlink.
No longer constantly shows times (even when -show-times=false). When
shown, times are now correctly grouped.
llvm-svn: 370951
The file was modifiedllvm/tools/llvm-jitlink/llvm-jitlink.cpp
Commit 5559406ae5d21fab0bcd6a07347f4f928d3c7ce8 by Jonas Devlieghere
[Python] Fix whitespace before making changes (NFC)
llvm-svn: 370952
The file was modifiedlldb/scripts/Python/python-extensions.swig
Commit 24223eb24c74a116e1a3eb704d28e61454719a74 by Jonas Devlieghere
[Python] Implement truth testing for lldb.value
Python 3 calls __bool__() instead of __len__() and lldb.value only
implemented the __len__ method. This adds the __bool__() implementation.
Differential revision: https://reviews.llvm.org/D67183
llvm-svn: 370953
The file was modifiedlldb/scripts/Python/python-extensions.swig
The file was modifiedlldb/packages/Python/lldbsuite/test/python_api/value/TestValueAPI.py
Commit 6eef8e01c7654acf417d3ad81fb6cb5cfc6edc2f by Jonas Devlieghere
[Python] Implement __next__ for value_iter
Python 3 iteration calls the next() method instead of next() and
value_iter only implemented the Python 2 version.
Differential revision: https://reviews.llvm.org/D67184
llvm-svn: 370954
The file was modifiedlldb/packages/Python/lldbsuite/test/python_api/value/TestValueAPI.py
The file was modifiedlldb/scripts/Python/python-extensions.swig
Commit b276a9a51e42bc260ff6616112a074d135c5426e by daniel_l_sanders
[globalisel] Support trivial COPY in GISelKnownBits
Summary: Allow GISelKnownBits to look through the trivial case of
TargetOpcode::COPY
Reviewers: aditya_nandakumar
Subscribers: rovka, hiraditya, volkan, Petar.Avramovic, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D67131
llvm-svn: 370955
The file was modifiedllvm/lib/CodeGen/GlobalISel/GISelKnownBits.cpp
The file was modifiedllvm/unittests/CodeGen/GlobalISel/KnownBitsTest.cpp
Commit a7a3b3aa430bef2605bb5c73a9ee79fcbff7a229 by jdoerfert
[Attributor][Fix] Ensure the attribute names are created properly
The names of the attributes were not always created properly which
caused problems with the yaml output.
llvm-svn: 370956
The file was modifiedllvm/lib/Transforms/IPO/Attributor.cpp
Commit 6da79ce1fed52f828b5e5d2e3d274ef1692f17af by asbirlea
[MemorySSA] Re-enable MemorySSA use.
Differential Revision: https://reviews.llvm.org/D58311
llvm-svn: 370957
The file was modifiedllvm/lib/Analysis/MemorySSA.cpp
The file was modifiedllvm/test/CodeGen/PowerPC/sms-grp-order.ll
The file was modifiedllvm/lib/Transforms/Utils/LoopUtils.cpp
The file was modifiedllvm/test/Other/opt-O2-pipeline.ll
The file was modifiedllvm/test/Other/opt-O3-pipeline.ll
The file was modifiedllvm/test/Other/opt-Os-pipeline.ll
Commit 85d6edb26577a75940c9d691e6a178726cdb066b by Jonas Devlieghere
Revert "[test] Address TestConcurrentMany*.py flakiness on macOS"
This reverts my change to pseudo_barrier.h which isn't necessary anymore
after Fred's fix to debugserver and caused TestThreadStepOut to fail.
llvm-svn: 370963
The file was modifiedlldb/packages/Python/lldbsuite/test/make/pseudo_barrier.h
Commit 09768c5d7abb398e92ed5fd1660d0ea69976943a by tlively
[WebAssembly] Initialize memory in start function
Summary:
- `__wasm_init_memory` is now the WebAssembly start function instead
  of being called from `__wasm_call_ctors` or called directly by the
  runtime.
- Adds a new synthetic data symbol `__wasm_init_memory_flag` that is
  atomically incremented from zero to one by the thread responsible
  for initializing memory.
- All threads now unconditionally perform data.drop on all passive
  segments.
- Removes --passive-segments and --active-segments flags and controls
  segment type based on --shared-memory instead. The deleted flags
  were only present to ameliorate the upgrade path in Emscripten.
Reviewers: sbc100, aheejin
Subscribers: dschuff, jgravelle-google, sunfish, jfb, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D65783
llvm-svn: 370965
The file was modifiedlld/test/wasm/tls-align.ll
The file was modifiedlld/test/wasm/tls.ll
The file was modifiedlld/wasm/Options.td
The file was modifiedlld/wasm/Config.h
The file was modifiedlld/wasm/SyntheticSections.cpp
The file was modifiedlld/wasm/Symbols.cpp
The file was modifiedlld/test/wasm/shared-memory.yaml
The file was modifiedlld/wasm/Symbols.h
The file was modifiedlld/test/wasm/data-segment-merging.ll
The file was modifiedllvm/include/llvm/BinaryFormat/Wasm.h
The file was modifiedlld/test/wasm/relocatable.ll
The file was modifiedlld/test/wasm/data-layout.ll
The file was modifiedlld/wasm/MarkLive.cpp
The file was modifiedlld/wasm/WriterUtils.h
The file was modifiedlld/wasm/Driver.cpp
The file was modifiedlld/wasm/Writer.cpp
The file was modifiedlld/test/wasm/no-tls.test
The file was modifiedlld/test/wasm/data-segments.ll
The file was modifiedlld/wasm/SyntheticSections.h
The file was modifiedlld/test/wasm/import-memory.test
The file was modifiedlld/wasm/WriterUtils.cpp
Commit bf78e39cbbbe4df8f750d338f93eea7aa3a0957b by e.menezes
[InstCombine] Add more test cases (NFC)
Add more test cases simplifying `log()`.
llvm-svn: 370966
The file was modifiedllvm/test/Transforms/InstCombine/log-pow.ll
Commit 7966953793270c61244a027add44b65046c5eca4 by Lang Hames
[llvm-rtdyld] Add timers to match llvm-jitlink.
When using llvm-rtdyld to execute code, -show-times will now show the
time taken to load the object files, apply relocations, and execute the
rtdyld-linked code.
llvm-svn: 370968
The file was modifiedllvm/tools/llvm-jitlink/llvm-jitlink.cpp
The file was modifiedllvm/tools/llvm-rtdyld/llvm-rtdyld.cpp
Commit 41adc374086d69082a1cef48ebea771833564afa by Lang Hames
[llvm-rtdyld][llvm-jitlink] Rename struct member to remove ambiguity.
This ambiguity (struct member name matching struct name) was causing
errors on a few of the MSVC bots. Hopefully this should fix it.
llvm-svn: 370969
The file was modifiedllvm/tools/llvm-rtdyld/llvm-rtdyld.cpp
The file was modifiedllvm/tools/llvm-jitlink/llvm-jitlink.cpp
Commit 40e3760472eae18919f4be8906869701db8f8f03 by aaron
Generate parent context id from Decl* instead of DeclContext*.
Because of multiple inheritance, a DeclContext pointer does not produce
the same pointer representation as a Decl pointer that references the
same AST Node.
When dumping the parentDeclContextId field of a node, convert the
pointer to Decl* first, so the id can be used to find the AST node it
references.
Patch by Bert Belder.
llvm-svn: 370970
The file was modifiedclang/lib/AST/JSONNodeDumper.cpp
The file was addedclang/test/AST/ast-dump-decl-context-json.cpp
The file was modifiedclang/test/AST/ast-dump-funcs-json.cpp
The file was modifiedclang/test/AST/ast-dump-decl-json.c
The file was modifiedclang/test/AST/ast-dump-template-decls-json.cpp
Commit eca01b031d44da54239d9956ba0acc7cf2f7798b by leonardchan
[NewPM][Sancov] Make Sancov a Module Pass instead of 2 Passes
This patch merges the sancov module and funciton passes into one module
pass.
The reason for this is because we ran into an out of memory error when
attempting to run asan fuzzer on some protobufs (pc.cc files). I traced
the OOM error to the destructor of SanitizerCoverage where we only call
appendTo[Compiler]Used which calls appendToUsedList. I'm not sure where
precisely in appendToUsedList causes the OOM, but I am able to confirm
that it's calling this function *repeatedly* that causes the OOM. (I
hacked sancov a bit such that I can still create and destroy a new
sancov on every function run, but only call appendToUsedList after all
functions in the module have finished. This passes, but when I make it
such that appendToUsedList is called on every sancov destruction, we hit
OOM.)
I don't think the OOM is from just adding to the SmallSet and
SmallVector inside appendToUsedList since in either case for a given
module, they'll have the same max size. I suspect that when the existing
llvm.compiler.used global is erased, the memory behind it isn't freed. I
could be wrong on this though.
This patch works around the OOM issue by just calling appendToUsedList
at the end of every module run instead of function run. The same amount
of constants still get added to llvm.compiler.used, abd we make the pass
usage and logic simpler by not having any inter-pass dependencies.
Differential Revision: https://reviews.llvm.org/D66988
llvm-svn: 370971
The file was modifiedllvm/test/Instrumentation/SanitizerCoverage/postdominator_check.ll
The file was modifiedllvm/test/Instrumentation/SanitizerCoverage/pc-table.ll
The file was modifiedllvm/test/Instrumentation/SanitizerCoverage/cmp-tracing.ll
The file was modifiedllvm/lib/Transforms/Instrumentation/Instrumentation.cpp
The file was modifiedllvm/test/Instrumentation/SanitizerCoverage/trace-pc-guard-comdat.ll
The file was modifiedllvm/include/llvm/Transforms/Instrumentation/SanitizerCoverage.h
The file was modifiedllvm/test/Instrumentation/SanitizerCoverage/cmp-tracing-api-x86_32.ll
The file was modifiedllvm/test/Instrumentation/SanitizerCoverage/coff-pc-table-inline-8bit-counters.ll
The file was modifiedllvm/test/Instrumentation/SanitizerCoverage/stack-depth-variable-declared-by-user.ll
The file was modifiedllvm/lib/Transforms/Instrumentation/SanitizerCoverage.cpp
The file was modifiedllvm/test/Instrumentation/SanitizerCoverage/chains.ll
The file was modifiedllvm/lib/Passes/PassRegistry.def
The file was modifiedllvm/test/Instrumentation/SanitizerCoverage/div-tracing.ll
The file was modifiedllvm/test/Instrumentation/SanitizerCoverage/tracing-comdat.ll
The file was modifiedllvm/test/Instrumentation/SanitizerCoverage/backedge-pruning.ll
The file was modifiedllvm/test/Instrumentation/SanitizerCoverage/unreachable-critedge.ll
The file was modifiedclang/lib/CodeGen/BackendUtil.cpp
The file was modifiedllvm/test/Instrumentation/SanitizerCoverage/inline-8bit-counters.ll
The file was modifiedllvm/test/Instrumentation/SanitizerCoverage/const-cmp-tracing.ll
The file was modifiedllvm/test/Instrumentation/SanitizerCoverage/coverage.ll
The file was modifiedllvm/test/Instrumentation/SanitizerCoverage/tracing.ll
The file was modifiedllvm/test/Instrumentation/SanitizerCoverage/coff-comdat.ll
The file was modifiedllvm/test/Instrumentation/SanitizerCoverage/coverage-dbg.ll
The file was modifiedllvm/test/Instrumentation/SanitizerCoverage/coverage2-dbg.ll
The file was modifiedllvm/test/Instrumentation/SanitizerCoverage/trace-pc-guard-inline-8bit-counters.ll
The file was modifiedllvm/test/Instrumentation/SanitizerCoverage/abort-in-entry-block.ll
The file was modifiedllvm/test/Instrumentation/SanitizerCoverage/interposable-symbol-nocomdat.ll
The file was modifiedllvm/test/Instrumentation/SanitizerCoverage/switch-tracing.ll
The file was modifiedllvm/test/Instrumentation/SanitizerCoverage/trace-pc-guard-nocomdat.ll
The file was modifiedllvm/include/llvm/InitializePasses.h
The file was modifiedllvm/test/Instrumentation/SanitizerCoverage/coff-used-ctor.ll
The file was modifiedllvm/test/Instrumentation/SanitizerCoverage/seh.ll
The file was modifiedllvm/test/Instrumentation/SanitizerCoverage/stack-depth.ll
The file was modifiedllvm/test/Instrumentation/SanitizerCoverage/cmp-tracing-api-x86_64.ll
The file was modifiedllvm/test/Instrumentation/SanitizerCoverage/gep-tracing.ll
The file was modifiedllvm/test/Instrumentation/SanitizerCoverage/no-func.ll
The file was modifiedllvm/test/Instrumentation/SanitizerCoverage/wineh.ll
Commit a6e8b685e13492abfb2e58dc49007deda165a00d by richard-llvm
[c++20] P1143R2: Add support for the C++20 'constinit' keyword.
This is mostly the same as the
[[clang::require_constant_initialization]] attribute, but has a couple
of additional syntactic and semantic restrictions.
In passing, I added a warning for the attribute form being added after
we have already seen the initialization of the variable (but before we
see the definition); that case previously slipped between the cracks and
the attribute was silently ignored.
llvm-svn: 370972
The file was modifiedclang/include/clang/AST/Decl.h
The file was modifiedclang/test/Misc/pragma-attribute-cxx.cpp
The file was modifiedclang/include/clang/Basic/Specifiers.h
The file was modifiedclang/lib/Sema/SemaType.cpp
The file was modifiedclang/test/Parser/cxx0x-decl.cpp
The file was modifiedclang/test/SemaCXX/attr-require-constant-initialization.cpp
The file was addedclang/test/CXX/dcl.dcl/dcl.spec/dcl.constinit/p2.cpp
The file was modifiedclang/www/cxx_status.html
The file was modifiedclang/test/Misc/pragma-attribute-supported-attributes-list.test
The file was modifiedclang/lib/Sema/SemaDeclAttr.cpp
The file was modifiedclang/lib/Frontend/InitPreprocessor.cpp
The file was modifiedclang/include/clang/Basic/DiagnosticSemaKinds.td
The file was addedclang/test/CXX/dcl.dcl/dcl.spec/dcl.constinit/p1.cpp
The file was modifiedclang/lib/Parse/ParseDecl.cpp
The file was modifiedclang/include/clang/Basic/Attr.td
The file was modifiedclang/lib/Sema/DeclSpec.cpp
The file was modifiedclang/lib/Parse/ParseDeclCXX.cpp
The file was modifiedclang/lib/Parse/ParseTentative.cpp
The file was modifiedclang/lib/AST/Decl.cpp
The file was modifiedclang/test/FixIt/fixit-c++2a.cpp
The file was modifiedclang/test/Lexer/cxx2a_keyword_as_cxx17.cpp
The file was modifiedclang/include/clang/Basic/DiagnosticParseKinds.td
The file was modifiedclang/lib/Sema/SemaDecl.cpp
The file was addedclang/test/CXX/dcl.dcl/dcl.spec/dcl.constinit/p3.cpp
The file was modifiedclang/test/Lexer/cxx-features.cpp
The file was modifiedclang/include/clang/Basic/DiagnosticCommonKinds.td
The file was modifiedclang/include/clang/Basic/TokenKinds.def
Commit d581dd50138186fe2c29eff617e7ca5897e3c69e by martin
[LLD] [COFF] Implement MinGW default manifest handling
In mingw environments, resources are normally compiled to resource
object files directly, instead of letting the linker convert them to
COFF format.
Since some time, GCC supports the notion of a default manifest object.
When invoking the linker, GCC looks for the default manifest object
file, and if found in the expected path, it is added to linker commands.
The default manifest is one that indicates support for the latest known
versions of windows, to implicitly unlock the modern behaviours of
certain APIs.
Not all mingw/gcc distributions include this file, but e.g. in msys2,
the default manifest object is distributed in a separate package (which
can be but might not always be installed).
This means that even if user projects only use one single resource
object file, the linker can end up with two resource object files, and
thus needs to support merging them.
The default manifest has a language id of zero, and GNU ld has got logic
for dropping a manifest with a zero language id, if there's another
manifest present with a nonzero language id. If there are multiple
manifests with a nonzero language id, the merging process errors out.
Differential Revision: https://reviews.llvm.org/D66825
llvm-svn: 370974
The file was addedlld/test/COFF/Inputs/manifest-lang1.res
The file was addedlld/test/COFF/Inputs/manifest-lang0.res
The file was modifiedllvm/include/llvm/Object/WindowsResource.h
The file was addedlld/test/COFF/Inputs/manifest-lang0.yaml
The file was addedlld/test/COFF/merge-resource-manifest.test
The file was addedlld/test/COFF/Inputs/manifest-lang2.res
The file was addedlld/test/COFF/Inputs/manifest-lang2.yaml
The file was modifiedlld/COFF/DriverUtils.cpp
The file was addedlld/test/COFF/Inputs/manifest-lang1.yaml
The file was modifiedllvm/lib/Object/WindowsResource.cpp
Commit 7ab525370435ec501260e6083fc2debe7218e9c2 by jdoerfert
[Attributor][Fix] Make sure we do not delete live code
Summary: Liveness needs to mark edges, not blocks as dead.
Reviewers: sstefan1, uenoku
Subscribers: hiraditya, bollu, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D67191
llvm-svn: 370975
The file was modifiedllvm/test/Transforms/FunctionAttrs/noreturn_sync.ll
The file was modifiedllvm/lib/Transforms/IPO/Attributor.cpp
The file was modifiedllvm/test/Transforms/FunctionAttrs/liveness.ll
The file was modifiedllvm/test/Transforms/FunctionAttrs/noreturn_async.ll
Commit 56e9b608ad3a42d59cd4521b0eb495388261c67e by jdoerfert
[Attributor][Stats] Use the right statistics macro
llvm-svn: 370976
The file was modifiedllvm/lib/Transforms/IPO/Attributor.cpp
Commit 5ff310e298058cf13cace70839b0ca8cc26fc262 by Matthew.Arsenault
GlobalISel: Add basic legalization for G_BITREVERSE
llvm-svn: 370979
The file was modifiedllvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp
The file was addedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-bitreverse.mir
Commit 2df41a8e38976de5a161b2cd06bc5d1e0136df74 by Matthew.Arsenault
AMDGPU/GlobalISel: Select G_BITREVERSE
llvm-svn: 370980
The file was modifiedllvm/lib/Target/AMDGPU/VOP1Instructions.td
The file was addedllvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-bitreverse.mir
The file was addedllvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-bitreverse.mir
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPURegisterBankInfo.cpp
Commit 48c6fadc0daceb3374d7cc1df1e99ffef4b89d4c by Yuanfang Chen
[DebugInfo] Emit DW_TAG_enumeration_type for referenced global
enumerator.
This essentially reverts changes from r361400 while keeping behavior for
CodeView.
Reviewers: akhuang, rnk, probinson
Reviewed by: rnk
Subscribers: cfe-commits
Tags: #clang
Differential Revision: https://reviews.llvm.org/D67141
llvm-svn: 370981
The file was modifiedclang/lib/CodeGen/CGDebugInfo.cpp
The file was modifiedclang/test/CodeGen/enum2.c
Commit 5cd5d56eedf9e0069f6d80ee5e44cd5d3bb2ec7d by aaron
Diagnose _Atomic as a C11 extension.
llvm-svn: 370982
The file was modifiedclang/test/SemaCXX/atomic-type.cpp
The file was modifiedclang/lib/Parse/ParseDecl.cpp
The file was modifiedclang/test/Parser/atomic.c
The file was modifiedclang/test/SemaCXX/constant-expression-cxx11.cpp
Commit c40449f3c5809762b97289cda33091801d2247a6 by Jonas Devlieghere
[test] Escape path to match the literal string
This test was failing when you had things like `+` in your build path.
llvm-svn: 370983
The file was modifiedlldb/packages/Python/lldbsuite/test/functionalities/load_unload/TestLoadUnload.py
Commit 028061d4ebeb777e3ad899519b56d7eafcb2faf9 by puyan
[mir-canon][NFC] Move MIR vreg renaming code to separate file for better
reuse.
Moving MIRCanonicalizerPass vreg renaming code to MIRVRegNamerUtils so
that it can be reused in another pass (ie planing to write a standalone
mir-namer pass).
I'm going to write a mir-namer pass so that next time someone has to
author a test in MIR, they can use it to cleanup the naming and make it
more readable by having the numbered vregs swapped out with named vregs.
Differential Revision: https://reviews.llvm.org/D67114
llvm-svn: 370985
The file was modifiedllvm/lib/CodeGen/MIRCanonicalizerPass.cpp
The file was addedllvm/lib/CodeGen/MIRVRegNamerUtils.cpp
The file was modifiedllvm/lib/CodeGen/CMakeLists.txt
The file was addedllvm/lib/CodeGen/MIRVRegNamerUtils.h
Commit 252d7a862be252286dd9e4798bb7e30688d12556 by richard-llvm
[www] Update attribute reference for 'constinit'.
llvm-svn: 370986
The file was modifiedclang/include/clang/Basic/Attr.td
The file was modifiedclang/include/clang/Basic/AttrDocs.td
Commit a18c934e1aebcc1cb315b638db20a936eb8fc939 by richard-llvm
[www] Fix hyperlink syntax in attribute reference.
llvm-svn: 370987
The file was modifiedclang/include/clang/Basic/AttrDocs.td
Commit 44ca0c55f0df0ba254b79f187e51b4b0d0b28ed7 by nicolasweber
gn build: Merge r370985
llvm-svn: 370988
The file was modifiedllvm/utils/gn/secondary/llvm/lib/CodeGen/BUILD.gn
Commit 71c37a8fdaa8c5abbb3c614576659e5a948781e6 by richard-llvm
For PR43213, track whether template parameters are implicit through
template instantiation so we know whether to mangle them in
lambda-expressions.
llvm-svn: 370991
The file was modifiedclang/lib/Sema/SemaTemplateInstantiateDecl.cpp
The file was modifiedclang/test/CodeGenCXX/mangle-lambda-explicit-template-params.cpp
Commit 4be6706eb6af66b06e39cd0cfabaa09dd42eb95a by Jonas Devlieghere
[Disassembler] Simplify a few methods (NFC)
Use early returns to highlight preconditions and make the code easier to
follow.
llvm-svn: 370994
The file was modifiedlldb/source/Symbol/SymbolContext.cpp
The file was modifiedlldb/source/Core/Disassembler.cpp
The file was modifiedlldb/include/lldb/Symbol/SymbolContext.h
Commit b78324fc4087f0d9faf66ece89438a84041d5fa8 by Jessica Paquette
[AArch64][GlobalISel] Teach AArch64CallLowering to handle basic sibling
calls
This adds support for basic sibling call lowering in AArch64. The intent
here is to only handle tail calls which do not change the ABI (hence,
sibling calls.)
At this point, it is very restricted. It does not handle
- Vararg calls.
- Calls with outgoing arguments.
- Calls whose calling conventions differ from the caller's calling
convention.
- Tail/sibling calls with BTI enabled.
This patch adds
- `AArch64CallLowering::isEligibleForTailCallOptimization`, which is
equivalent
  to the same function in AArch64ISelLowering.cpp (albeit with the
restrictions
  above.)
- `mayTailCallThisCC` and `canGuaranteeTCO`, which are identical to
those in
  AArch64ISelLowering.cpp.
- `getCallOpcode`, which is exactly what it sounds like.
Tail/sibling calls are lowered by checking if they pass
target-independent tail call positioning checks, and checking if they
satisfy
`isEligibleForTailCallOptimization`. If they do, then a tail call
instruction is emitted instead of a normal call. If we have a sibling
call (which is always the case in this patch), then we do not emit any
stack adjustment operations. When we go to lower a return, we check if
we've already emitted a tail call. If so, then we skip the return
lowering.
For testing, this patch
- Adds call-translator-tail-call.ll to test which tail calls we
currently lower,
which ones we don't, and which ones we shouldn't.
- Updates branch-target-enforcement-indirect-calls.ll to show that we
fall back
as expected.
Differential Revision: https://reviews.llvm.org/D67189
llvm-svn: 370996
The file was modifiedllvm/lib/CodeGen/GlobalISel/CallLowering.cpp
The file was modifiedllvm/lib/Target/AArch64/AArch64CallLowering.cpp
The file was modifiedllvm/test/CodeGen/AArch64/branch-target-enforcement-indirect-calls.ll
The file was modifiedllvm/include/llvm/CodeGen/GlobalISel/CallLowering.h
The file was addedllvm/test/CodeGen/AArch64/GlobalISel/call-translator-tail-call.ll
The file was modifiedllvm/lib/Target/AArch64/AArch64CallLowering.h
The file was modifiedllvm/test/CodeGen/AArch64/dllimport.ll
Commit 0910e17d5231379358c48bbc16d6c0d03368eda0 by Jonas Devlieghere
[Disassembler] Simplify a few methods (2/2) (NFC)
Use early returns to highlight preconditions and make the code easier to
follow.
llvm-svn: 370998
The file was modifiedlldb/source/Core/Disassembler.cpp
Commit 29ccc8523a4ab0c245b8a62664db34f28adf4451 by rnk
Use -mtriple to fix AMDGPU test sensitive to object file format
GOTPCREL32 doesn't exist on COFF, so it isn't used when this test runs
on Windows.
llvm-svn: 371000
The file was modifiedllvm/test/CodeGen/AMDGPU/no-initializer-constant-addrspace.ll
Commit b7ebdbdb357fd798cfb6cf2e5fd6fa31c35de8b8 by mclow.lists
Reformat the beginning of the testing doc to make clear how to run all
the tests.
llvm-svn: 371001
The file was modifiedlibcxx/docs/TestingLibcxx.rst
Commit 473d0d7f569c84446d9880727403524d4a9838eb by Artem Dergachev
[analyzer] scan-build: handle --sysroot=/path in addition to --sysroot
/path.
Current code assumes flags in CompilerLinkerOptionMap don't use =, which
isn't always true.
Patch by Chris Laplante!
Differential Revision: https://reviews.llvm.org/D66569
llvm-svn: 371002
The file was modifiedclang/tools/scan-build/libexec/ccc-analyzer
Commit 33b8a55329b9a968e4f2d859610d638d7fb394e5 by yikong
Revert "Revert "[builtins] Rounding mode support for addxf3/subxf3""
Test failure fixed.
This reverts commit e204d244badb2e9765a1020f41c773f63da208f4.
llvm-svn: 371003
The file was addedcompiler-rt/lib/builtins/fp_mode.c
The file was modifiedcompiler-rt/lib/builtins/addtf3.c
The file was addedcompiler-rt/lib/builtins/arm/fp_mode.c
The file was modifiedcompiler-rt/lib/builtins/adddf3.c
The file was modifiedcompiler-rt/lib/builtins/fp_add_impl.inc
The file was modifiedcompiler-rt/lib/builtins/addsf3.c
The file was addedcompiler-rt/lib/builtins/fp_mode.h
The file was modifiedcompiler-rt/lib/builtins/subtf3.c
The file was addedcompiler-rt/lib/builtins/aarch64/fp_mode.c
The file was modifiedcompiler-rt/lib/builtins/subsf3.c
The file was modifiedcompiler-rt/lib/builtins/CMakeLists.txt
The file was modifiedcompiler-rt/test/builtins/Unit/addtf3_test.c
The file was modifiedcompiler-rt/lib/builtins/subdf3.c
The file was modifiedcompiler-rt/test/builtins/Unit/subtf3_test.c
Commit 7ac42374abc01d89235c862cc44da0c6c930489c by richard-llvm
[c++20] Fix some ambiguities in our mangling of lambdas with explicit
template parameters.
This finishes the implementation of the proposal described in
https://github.com/itanium-cxx-abi/cxx-abi/issues/31. (We already
implemented the <lambda-sig> extensions, but didn't take them into
account when computing mangling numbers, and didn't deal properly with
expanded parameter packs, and didn't disambiguate between different
levels of template parameters in manglings.)
llvm-svn: 371004
The file was modifiedclang/include/clang/AST/Mangle.h
The file was modifiedclang/lib/Sema/SemaLambda.cpp
The file was modifiedclang/lib/AST/ItaniumCXXABI.cpp
The file was modifiedclang/test/CodeGenCXX/mangle-lambda-explicit-template-params.cpp
The file was modifiedclang/lib/AST/DeclBase.cpp
The file was modifiedclang/lib/AST/ItaniumMangle.cpp
Commit 6d3ea2d9b60baf8db2dfeb3230bd8364a27fae30 by puyan
[mir-canon][NFC] Adding -verify-machineinstrs to mir-canon tests.
In the review process for some of the refactoring of
MIRCanonicalizationPass it was noted that some of the tests didn't have
verifier enabled. Enabling here.
llvm-svn: 371005
The file was modifiedllvm/test/CodeGen/MIR/AArch64/mirCanonIdempotent.mir
The file was modifiedllvm/test/CodeGen/MIR/AArch64/mirCanonCopyCopyProp.mir
Commit d51a3746d0c06f7267667cf8fdf0cfd27cbf304d by Matthew.Arsenault
AMDGPU/GlobalISel: Fix assert on load from constant address
llvm-svn: 371006
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.cpp
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-load-smrd.mir
Commit 25156ae7ea14e7237e020a8739de94febd0b109a by Matthew.Arsenault
AMDGPU/GlobalISel: Fix placeholder value used for addrspacecast
llvm-svn: 371007
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-addrspacecast.mir
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp
Commit 69b1a2ae65ed9b1a7a19420a9deaaf283a312758 by Matthew.Arsenault
AMDGPU/GlobalISel: Restore insert point when getting aperture
Avoids SSA violations in a future patch.
llvm-svn: 371008
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-addrspacecast.mir
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp
Commit f581d575ce0a8bdcd580c2c6626c10cda6873100 by Matthew.Arsenault
AMDGPU: Add intrinsics for address space identification
The library currently uses ptrtoint and directly checks the queue ptr
for this, which counts as a pointer capture.
llvm-svn: 371009
The file was addedllvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.is.private.ll
The file was modifiedllvm/include/llvm/IR/IntrinsicsAMDGPU.td
The file was addedllvm/test/Transforms/InferAddressSpaces/AMDGPU/address-space-id-funcs.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/annotate-kernel-features-hsa.ll
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPUAnnotateKernelFeatures.cpp
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp
The file was modifiedllvm/lib/Target/AMDGPU/SIISelLowering.cpp
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.h
The file was addedllvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.is.shared.ll
The file was addedllvm/test/CodeGen/AMDGPU/llvm.amdgcn.is.private.ll
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPUTargetTransformInfo.cpp
The file was addedllvm/test/CodeGen/AMDGPU/llvm.amdgcn.is.shared.ll
Commit 281f2e2c37f35598766d3ffcaec2b558add14ee0 by Matthew.Arsenault
AMDGPU: Add builtins for is_shared/is_private
llvm-svn: 371010
The file was modifiedclang/test/CodeGenOpenCL/builtins-amdgcn-ci.cl
The file was modifiedclang/include/clang/Basic/BuiltinsAMDGPU.def
The file was modifiedclang/lib/Basic/Targets/AMDGPU.cpp
The file was addedclang/test/SemaOpenCL/builtins-amdgcn-error-flat-address-space.cl
The file was modifiedclang/test/CodeGenOpenCL/amdgpu-features.cl
Commit e99dc4ba572c5d1017942e9f51d7a227813e9bc1 by ruiu
Align output segments correctly
Previously, segments were aligned according to their first section's
alignment requirements. That was not correct, but segments are also
aligned to a page boundary, and a page boundary is usually much larger
than a section alignment requirement, so no one noticed this bug before.
Now, lld has --nmagic option which sets maxPageSize to 1 to effectively
disable page alignment, which reveals the issue.
Fixes https://bugs.llvm.org/show_bug.cgi?id=43212
Differential Revision: https://reviews.llvm.org/D67152
llvm-svn: 371013
The file was modifiedlld/ELF/Writer.cpp
The file was addedlld/test/ELF/nmagic.s
Commit 991f0fb149a3ddf8e007fc9d49e441c97481f61d by ikudrin
[DWARF] Support DWARF64 in DWARFListTableHeader.
This enables 64-bit DWARF support for parsing range and location list
tables.
Differential Revision: https://reviews.llvm.org/D66643
llvm-svn: 371014
The file was modifiedllvm/include/llvm/DebugInfo/DWARF/DWARFUnit.h
The file was addedllvm/test/tools/llvm-dwarfdump/X86/debug_rnglists_dwarf64.s
The file was addedllvm/test/tools/llvm-dwarfdump/X86/debug_rnglists_reserved_length.s
The file was modifiedllvm/test/tools/llvm-dwarfdump/X86/debug_rnglists_invalid.s
The file was modifiedllvm/lib/DebugInfo/DWARF/DWARFListTable.cpp
The file was removedllvm/test/tools/llvm-dwarfdump/X86/Inputs/debug_rnglists_DWARF64.s
The file was modifiedllvm/include/llvm/DebugInfo/DWARF/DWARFListTable.h
Commit 59a1d998d97dcf7be747caf7d2f80089c1830fb1 by pavel
[dotest] Delete trivial inline test makefiles
inline tests are able to generate these automatically
llvm-svn: 371015
The file was removedlldb/packages/Python/lldbsuite/test/lang/cpp/function_refs/Makefile
The file was removedlldb/packages/Python/lldbsuite/test/functionalities/data-formatter/typedef_array/Makefile
The file was removedlldb/packages/Python/lldbsuite/test/commands/expression/dollar-in-variable/Makefile
The file was removedlldb/packages/Python/lldbsuite/test/commands/frame/var-scope/Makefile
The file was removedlldb/packages/Python/lldbsuite/test/commands/statistics/basic/Makefile
The file was removedlldb/packages/Python/lldbsuite/test/lang/cpp/symbols/Makefile
The file was removedlldb/packages/Python/lldbsuite/test/lang/c/struct_types/Makefile
The file was removedlldb/packages/Python/lldbsuite/test/commands/expression/completion-crash1/Makefile
The file was removedlldb/packages/Python/lldbsuite/test/functionalities/data-formatter/setvaluefromcstring/Makefile
The file was removedlldb/packages/Python/lldbsuite/test/lang/cpp/offsetof/Makefile
The file was removedlldb/packages/Python/lldbsuite/test/lang/cpp/function-template-parameter-pack/Makefile
The file was removedlldb/packages/Python/lldbsuite/test/commands/expression/completion-crash2/Makefile
The file was removedlldb/packages/Python/lldbsuite/test/issue_verification/Makefile
The file was removedlldb/packages/Python/lldbsuite/test/lang/c/offsetof/Makefile
The file was removedlldb/packages/Python/lldbsuite/test/lang/cpp/gmodules-templates/Makefile
The file was removedlldb/packages/Python/lldbsuite/test/lang/cpp/llvm-style/Makefile
The file was removedlldb/packages/Python/lldbsuite/test/python_api/sbvalue_const_addrof/Makefile
The file was removedlldb/packages/Python/lldbsuite/test/commands/source/info/Makefile
The file was removedlldb/packages/Python/lldbsuite/test/lang/cpp/extern_c/Makefile
The file was removedlldb/packages/Python/lldbsuite/test/lang/cpp/class-template-parameter-pack/Makefile
The file was removedlldb/packages/Python/lldbsuite/test/commands/expression/completion-crash-incomplete-record/Makefile
The file was removedlldb/packages/Python/lldbsuite/test/commands/expression/unicode-in-variable/Makefile
The file was removedlldb/packages/Python/lldbsuite/test/functionalities/data-formatter/dump_dynamic/Makefile
The file was removedlldb/packages/Python/lldbsuite/test/lang/cpp/virtual-overload/Makefile
The file was removedlldb/packages/Python/lldbsuite/test/functionalities/data-formatter/stringprinter/Makefile
The file was removedlldb/packages/Python/lldbsuite/test/lang/cpp/operators/Makefile
The file was removedlldb/packages/Python/lldbsuite/test/lang/cpp/const_this/Makefile
The file was removedlldb/packages/Python/lldbsuite/test/lang/cpp/namespace_conflicts/Makefile
The file was removedlldb/packages/Python/lldbsuite/test/commands/expression/rdar42038760/Makefile
The file was removedlldb/packages/Python/lldbsuite/test/commands/expression/rdar44436068/Makefile
Commit e46639620d32c4edf274d5d2964850542d34db15 by ikudrin
[DWARF] Fix referencing Range List Tables from CUs for DWARF64.
As DW_AT_rnglists_base points after the header and headers have
different sizes for DWARF32 and DWARF64, we have to use the format of
the CU to adjust the offset correctly in order to extract the referenced
range list table.
The patch also changes the type of RangeSectionBase because in DWARF64
it is 8-bytes long.
Differential Revision: https://reviews.llvm.org/D67098
llvm-svn: 371016
The file was modifiedllvm/include/llvm/DebugInfo/DWARF/DWARFUnit.h
The file was modifiedllvm/lib/DebugInfo/DWARF/DWARFUnit.cpp
The file was addedllvm/test/DebugInfo/X86/dwarfdump-rnglists-dwarf64.s
Commit c3bea40bf751b1ade264e2df8487d196e0c7d3c8 by pavel
Breakpad: Basic support for STACK WIN unwinding
Summary: This patch makes it possible to unwind via breakpad STACK WIN
records. It is "basic" because two important features are missing:
- support for the .raSearch keyword
- support for multiple STACK WIN records within a single function Right
now, we just reject the .raSearch records, and always pick the first
record for the whole function SymbolFileBreakpad, and so I think it can
serve as a good example of what is needed of the symbol file and
unwinding machinery to make this work.
However, it is already useful for unwinding in some situations, and it
sets up the general framework for the parsing of these kinds of records,
which reduces the size of the followup patches implementing the two
other components.
Reviewers: amccarth, rnk, markmentovai
Subscribers: lldb-commits
Differential Revision: https://reviews.llvm.org/D67067
llvm-svn: 371017
The file was addedlldb/lit/SymbolFile/Breakpad/Inputs/unwind-via-stack-win.yaml
The file was modifiedlldb/source/Plugins/SymbolFile/Breakpad/SymbolFileBreakpad.cpp
The file was modifiedlldb/source/Plugins/SymbolFile/Breakpad/SymbolFileBreakpad.h
The file was addedlldb/lit/SymbolFile/Breakpad/Inputs/unwind-via-stack-win.syms
The file was addedlldb/lit/SymbolFile/Breakpad/unwind-via-stack-win.test
Commit 7790858b00de4c2e48ae6b171e642396f880b8c8 by pavel
Obliterate LLDB_CONFIGURATION_BUILDANDINTEGRATION
Summary: With the XCode project gone, there doesn't seem to be anything
setting this macro anymore -- and the macro wasn't doing much anyway.
Reviewers: jingham, sgraenitz
Subscribers: emaste, lldb-commits
Differential Revision: https://reviews.llvm.org/D66742
llvm-svn: 371018
The file was modifiedlldb/source/Plugins/Process/FreeBSD/ProcessMonitor.cpp
The file was modifiedlldb/source/Plugins/Process/POSIX/CrashReason.cpp
The file was modifiedlldb/source/Plugins/Process/POSIX/ProcessMessage.cpp
Commit 45e3ce8d7653f80e8c5ff7e306112c35544e3d4b by pavel
[dotest] Centralize initialization commands even more
Summary: In r367234 we introduced a central place to hold the set up
commands for the various ways we have of launching lldb. However, a
number of commands still remained outside of that.
This patch moves the remaining set up commands into this function, which
allows us to remove manual clang module path setting code in
TestBatchMode.
One unfortunate victim of this approach is TestSTTYBeforeAndAfter which,
due to how it launches lldb (pexpect->expect->lldb), fails get the
quoting right. It would be possible to fix the quoting there, it would
be a bit icky, and none of the commands in this list are really relevant
for what this test is doing, so I just remove the commands outright.
Reviewers: JDevlieghere, jankratochvil
Subscribers: lldb-commits
Differential Revision: https://reviews.llvm.org/D67173
llvm-svn: 371019
The file was modifiedlldb/packages/Python/lldbsuite/test/driver/batch_mode/TestBatchMode.py
The file was modifiedlldb/packages/Python/lldbsuite/test/terminal/TestSTTYBeforeAndAfter.py
The file was modifiedlldb/packages/Python/lldbsuite/test/lldbtest.py
The file was modifiedlldb/packages/Python/lldbsuite/test/tools/lldb-vscode/lldbvscode_testcase.py
Commit 35dfb2e8d748b11c8a95c132a0d4a031b77da394 by pavel
[dotest] Remove top-level Makefile
This appears to be a really ancient  way of running the test suite. It
is also completely disfunctional now, and probably has been for a long
time.
llvm-svn: 371020
The file was removedlldb/packages/Python/lldbsuite/test/Makefile
Commit caa42792f33d68b7706c00d217e2d8b239ab0985 by 1.int32
Rename of constants in ASTImporterVisibilityTest. NFC.
Reviewers: martong, a.sidorin, shafik
Reviewed By: shafik
Subscribers: shafik, rnkovacs, dkrupp, Szelethus, gamesh411, cfe-commits
Tags: #clang
Differential Revision: https://reviews.llvm.org/D67174
llvm-svn: 371021
The file was modifiedclang/unittests/AST/ASTImporterVisibilityTest.cpp
Commit 4a16c295519319242f496f8206589f2a6343b0e2 by kadircet
[clang-tidy] Fix definitions in headers check to respect qualifiers
Summary: The check was generating a fix without taking qualifiers in
return type into account. This patch changes the insertion location to
be before qualifers.
Reviewers: gribozavr
Subscribers: xazax.hun, cfe-commits
Tags: #clang
Differential Revision: https://reviews.llvm.org/D67213
llvm-svn: 371022
The file was modifiedclang-tools-extra/clang-tidy/misc/DefinitionsInHeadersCheck.cpp
The file was modifiedclang-tools-extra/test/clang-tidy/misc-definitions-in-headers.hpp
Commit 2c9c43225610433956b4ed6e2bb62b746c211d53 by grimar
[lib/ObjectYAML] - Stop calling error(1) when mapping the st_other field
of a symbol.
This eliminates one of the error(1) call in this lib. It is different
from the others because happens on a fields mapping stage and can be
easily fixed.
Differential revision: https://reviews.llvm.org/D67150
llvm-svn: 371023
The file was modifiedllvm/lib/ObjectYAML/ELFYAML.cpp
The file was modifiedllvm/test/tools/yaml2obj/elf-symbol-stother.yaml
Commit 7f1f50de413fa58ba1016b5fb8e96475db736c5a by grimar
Revert r371023 "[lib/ObjectYAML] - Stop calling error(1) when mapping
the st_other field of a symbol."
It broke BBots:
http://lab.llvm.org:8011/builders/lld-x86_64-darwin13/builds/36387/steps/build_Lld/logs/stdio
http://lab.llvm.org:8011/builders/clang-x86_64-debian-fast/builds/17117/steps/test/logs/stdio
llvm-svn: 371024
The file was modifiedllvm/test/tools/yaml2obj/elf-symbol-stother.yaml
Commit faa2a089875c0b5db9e8ad07654fe16b8aefafb1 by grimar
Revert r371023 "[lib/ObjectYAML] - Stop calling error(1) when mapping
the st_other field of a symbol." (2)
Forgot to revert the cpp file.
llvm-svn: 371025
The file was modifiedllvm/lib/ObjectYAML/ELFYAML.cpp
Commit 999f8a7416f8edc54ef92e715fd23c532bcc74d4 by hans
Revert r361885 "[Driver] Fix -working-directory issues"
This made clang unable to open files using relative paths on network
shares on Windows (PR43204). On the bug it was pointed out that
createPhysicalFileSystem() is not terribly mature, and using it is
risky. Reverting for now until there's a clear way forward.
> Currently the `-working-directory` option does not actually impact the
working
> directory for all of the clang driver, it only impacts how files are
looked up
> to make sure they exist.  This means that that clang passes the wrong
paths
> to -fdebug-compilation-dir and -coverage-notes-file.
>
> This patch fixes that by changing all the places in the driver where
we convert
> to absolute paths to use the VFS, and then calling
setCurrentWorkingDirectory on
> the VFS.  This also changes the default VFS for `Driver` to use a
virtualized
> working directory, instead of changing the process's working
directory.
>
> Differential Revision: https://reviews.llvm.org/D62271
This also revertes the part of r369938 which checked that
-working-directory works.
llvm-svn: 371027
The file was modifiedclang/lib/Driver/Driver.cpp
The file was modifiedclang/lib/Driver/ToolChains/Clang.cpp
The file was modifiedclang/include/clang/Basic/DiagnosticDriverKinds.td
The file was modifiedclang/test/Driver/gen-cdb-fragment.c
The file was modifiedclang/test/Driver/working-directory.c
Commit cbce3cef52b134f83061f6f4c8f0bb8f916838bf by Raphael Isemann
[lldb][NFC] Stabilize gui/basic test by waiting on prompt
We should wait on the GUI to exit before tearing down the test.
llvm-svn: 371028
The file was modifiedlldb/packages/Python/lldbsuite/test/commands/gui/basic/TestGuiBasic.py
Commit e7b4d209987ab94f3ec8f88256257d02dff898a4 by grimar
Recommit r371023 "[lib/ObjectYAML] - Stop calling error(1) when mapping
the st_other field of a symbol."
Fix: added missing return "return 0;"
Original commit message: This eliminates one of the error(1) call in
this lib. It is different from the others because happens on a fields
mapping stage and can be easily fixed.
Differential revision: https://reviews.llvm.org/D67150
llvm-svn: 371030
The file was modifiedllvm/lib/ObjectYAML/ELFYAML.cpp
The file was modifiedllvm/test/tools/yaml2obj/elf-symbol-stother.yaml
Commit cac96e605787ca67a1c1e7226c8db1d90ea88b6b by ibiryukov
[Sema] Refactor LookupVisibleDecls. NFC
Summary: We accumulated some configuration parameters for
LookupVisibleDecls that are being passed unchanged to recursive calls,
e.g. LoadExternal and IncludeDependentBases.
At the same time, there is a bunch of parameters that can change in the
recursive invocations.
It is hard to tell the difference between those groups, making the code
hard to follow.
This change introduces a helper struct and factors out the non-changing
bits into fields, making recursive calls in the implementation code
easier to read.
Reviewers: sammccall
Reviewed By: sammccall
Subscribers: riccibruno, doug.gregor, jkorous, arphaman, kadircet,
cfe-commits
Tags: #clang
Differential Revision: https://reviews.llvm.org/D65752
llvm-svn: 371032
The file was modifiedclang/lib/Sema/SemaLookup.cpp
Commit 33b1a0eb5e73abeb1a6405f8722664ae2e68c02b by grimar
[lib/ObjectYAML] - Cleanup the private interface of ELFState<ELFT>.
NFCI.
In D62809 I accidentally added "ELFState<ELFT> &State" as the first
parameter to two methods. There is no reason for having that. I removed
this argument and also moved finalizeStrings declaration to remove an
excessive 'private:' tag.
Differential revision: https://reviews.llvm.org/D67157
llvm-svn: 371033
The file was modifiedllvm/lib/ObjectYAML/ELFEmitter.cpp
Commit 91a5a2afe464c8b3ff5743ba9a930b79fbe2a765 by hans
Win: handle \\?\UNC\ prefix in realPathFromHandle (PR43204)
After r361885, realPathFromHandle() ends up getting called on the
working directory on each Clang invocation. This unveiled that the code
didn't work for paths on network shares.
For example, if one maps the local dir c:\src\tmp to x:
  net use x: \\localhost\c$\tmp
and run e.g. "clang -c foo.cc" in x:\, realPathFromHandle will get
\\?\UNC\localhost\c$\src\tmp\ back from GetFinalPathNameByHandleW, and
would strip off the initial \\?\ prefix, ending up with a path that
doesn't work.
This patch makes the prefix stripping a little smarter to handle this
case.
Differential revision: https://reviews.llvm.org/D67166
llvm-svn: 371035
The file was modifiedllvm/lib/Support/Windows/Path.inc
Commit 8db9e0e6976e084764cd7a30098b5fa12ddb7f7f by hokein
[clangd][vscode] Make SemanticHighlightingFeature more self-contained.
Summary: so that we don't have too many usage from the client side (just
a single occurrance for register), this also aligns with how other
builtin feature being implemented in vscode.
Reviewers: ilya-biryukov
Subscribers: MaskRay, jkorous, arphaman, kadircet, cfe-commits
Tags: #clang
Differential Revision: https://reviews.llvm.org/D67165
llvm-svn: 371036
The file was modifiedclang-tools-extra/clangd/clients/clangd-vscode/src/semantic-highlighting.ts
The file was modifiedclang-tools-extra/clangd/clients/clangd-vscode/src/extension.ts
Commit 32048464ee3e3fe8c23ea4183f2fedc09a20b2b3 by hokein
[clangd][vscode] Add a flag to enable semantic highlighting in clangd
Reviewers: ilya-biryukov
Subscribers: MaskRay, jkorous, arphaman, kadircet, cfe-commits
Tags: #clang
Differential Revision: https://reviews.llvm.org/D67096
llvm-svn: 371038
The file was modifiedclang-tools-extra/clangd/clients/clangd-vscode/src/extension.ts
The file was modifiedclang-tools-extra/clangd/clients/clangd-vscode/package.json
Commit c6fda60d71ad4958a2ae0e6c11a89e39cddb6d70 by russell.gallop
Fix time-trace breaking flame graph assumptions
-ftime-trace could break flame-graph assumptions on Windows, with an
inner scope overrunning outer scopes. This was due to the way that times
were truncated. Changed this so time_points for the flame-graph are
truncated instead of durations, preserving the relative order of event
starts and ends.
I have tried to retain the extra precision for the totals, which count
thousands or millions of events.
Added assert to check this property holds in future.
Fixes PR43043
Differential Revision: https://reviews.llvm.org/D66411
llvm-svn: 371039
The file was modifiedllvm/lib/Support/TimeProfiler.cpp
Commit 84dd9f4d5bbde123d422c1a39676aaee9602843a by gribozavr
[libclang] Refactored SharedParsedRegionsStorage
Summary: Removed the `PPRegionSetTy` typedef because it is only used 3
times, and obscures code more than it helps.
Renamed SharedParsedRegionsStorage to ThreadSafeParsedRegions, because
that better reflects the reason for this type to exist.
Replaced the `copyTo()` method that had an out parameter with a getter.
Renamed the `merge()` method to `addParsedRegions()`.
Renamed `ParsedSrcLocationsTracker::ParsedRegions` to
`ParsedRegionsSnapshot`, which better reflects its role.
Subscribers: arphaman, cfe-commits
Tags: #clang
Differential Revision: https://reviews.llvm.org/D67077
llvm-svn: 371041
The file was modifiedclang/tools/libclang/Indexing.cpp
Commit aff45e4b235dd7f369c7054761ccb3853fafdfac by gchatelet
[LLVM][Alignment] Make functions using log of alignment explicit
Summary: This patch renames functions that takes or returns alignment as
log2, this patch will help with the transition to llvm::Align. The
renaming makes it explicit that we deal with log(alignment) instead of a
power of two alignment. A few renames uncovered dubious assignments:
- `MirParser`/`MirPrinter` was expecting powers of two but
`MachineFunction` and `MachineBasicBlock` were using deal with
log2(align). This patch fixes it and updates the documentation.
- `MachineBlockPlacement` exposes two flags (`align-all-blocks` and
`align-all-nofallthru-blocks`) supposedly interpreted as power of two
alignments, internally these values are interpreted as log2(align). This
patch updates the documentation,
- `MachineFunctionexposes` exposes `align-all-functions` also
interpreted as power of two alignment, internally this value is
interpreted as log2(align). This patch updates the documentation,
Reviewers: lattner, thegameg, courbet
Subscribers: dschuff, arsenm, jyknight, dylanmckay, sdardis, nemanjai,
jvesely, nhaehnle, javed.absar, hiraditya, kbarton, fedor.sergeev, asb,
rbar, johnrusso, simoncook, apazos, sabuasal, niosHD, jrtc27, MaskRay,
zzheng, edward-jones, atanasyan, rogfer01, MartinMosbeck, brucehoult,
the_o, dexonsmith, PkmX, jocewei, jsji, Jim, s.egerton, llvm-commits,
courbet
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D65945
llvm-svn: 371045
The file was modifiedllvm/docs/MIRLangRef.rst
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.cpp
The file was modifiedllvm/lib/Target/X86/X86RetpolineThunks.cpp
The file was modifiedllvm/test/CodeGen/PowerPC/block-placement.mir
The file was modifiedllvm/lib/CodeGen/MachineFunction.cpp
The file was modifiedllvm/lib/Target/Mips/MCTargetDesc/MipsMCNaCl.h
The file was modifiedllvm/lib/Target/PowerPC/PPCISelLowering.h
The file was modifiedllvm/include/llvm/CodeGen/MachineBasicBlock.h
The file was modifiedllvm/lib/CodeGen/MIRParser/MIParser.cpp
The file was modifiedllvm/lib/CodeGen/BranchRelaxation.cpp
The file was modifiedllvm/lib/Target/AMDGPU/SIISelLowering.cpp
The file was modifiedllvm/lib/Target/Mips/MipsISelLowering.cpp
The file was modifiedllvm/lib/Target/MSP430/MSP430ISelLowering.cpp
The file was modifiedllvm/lib/Target/AVR/AVRISelLowering.cpp
The file was modifiedllvm/lib/Target/AMDGPU/R600AsmPrinter.cpp
The file was modifiedllvm/lib/Target/Mips/MipsBranchExpansion.cpp
The file was modifiedllvm/test/CodeGen/ARM/fp16-litpool2-arm.mir
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPUAsmPrinter.cpp
The file was modifiedllvm/test/DebugInfo/X86/debug-loc-offset.mir
The file was modifiedllvm/lib/Target/Hexagon/HexagonFixupHwLoops.cpp
The file was modifiedllvm/lib/CodeGen/MachineBlockPlacement.cpp
The file was modifiedllvm/lib/Target/SystemZ/SystemZISelLowering.cpp
The file was modifiedllvm/test/CodeGen/X86/tail-merge-after-mbp.mir
The file was modifiedllvm/lib/Target/AMDGPU/SIISelLowering.h
The file was modifiedllvm/lib/Target/ARM/ARMSubtarget.h
The file was modifiedllvm/lib/Target/AArch64/AArch64Subtarget.cpp
The file was modifiedllvm/lib/CodeGen/TargetLoweringBase.cpp
The file was modifiedllvm/lib/Target/SystemZ/SystemZLongBranch.cpp
The file was modifiedllvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
The file was modifiedllvm/lib/CodeGen/MachineBasicBlock.cpp
The file was modifiedllvm/lib/Target/Mips/MipsAsmPrinter.cpp
The file was modifiedllvm/lib/CodeGen/PatchableFunction.cpp
The file was modifiedllvm/lib/Target/Sparc/SparcISelLowering.cpp
The file was modifiedllvm/test/CodeGen/Mips/unaligned-memops-mapping.mir
The file was modifiedllvm/lib/Target/BPF/BPFISelLowering.cpp
The file was modifiedllvm/lib/Target/ARM/ARMISelLowering.cpp
The file was modifiedllvm/lib/Target/Mips/MCTargetDesc/MipsNaClELFStreamer.cpp
The file was modifiedllvm/lib/Target/Hexagon/HexagonBranchRelaxation.cpp
The file was modifiedllvm/lib/Target/Lanai/LanaiISelLowering.cpp
The file was modifiedllvm/lib/Target/PowerPC/PPCBranchSelector.cpp
The file was modifiedllvm/test/CodeGen/ARM/constant-island-movwt.mir
The file was modifiedllvm/lib/CodeGen/AsmPrinter/WinException.cpp
The file was modifiedllvm/include/llvm/CodeGen/MachineFunction.h
The file was modifiedllvm/lib/Target/AArch64/AArch64ISelLowering.cpp
The file was modifiedllvm/lib/Target/ARM/ARMConstantIslandPass.cpp
The file was modifiedllvm/lib/Target/ARM/ARMBasicBlockInfo.cpp
The file was modifiedllvm/lib/Target/RISCV/RISCVISelLowering.cpp
The file was modifiedllvm/lib/Target/ARM/ARM.td
The file was modifiedllvm/lib/Target/ARC/ARCMachineFunctionInfo.h
The file was modifiedllvm/test/CodeGen/ARM/fp16-litpool3-arm.mir
The file was modifiedllvm/lib/Target/Mips/MipsConstantIslandPass.cpp
The file was modifiedllvm/lib/Target/ARM/ARMSubtarget.cpp
The file was modifiedllvm/lib/Target/PowerPC/PPCISelLowering.cpp
The file was modifiedllvm/lib/Target/AArch64/AArch64Subtarget.h
The file was modifiedllvm/test/CodeGen/ARM/fp16-litpool-arm.mir
The file was modifiedllvm/test/CodeGen/ARM/fp16-litpool-thumb.mir
The file was modifiedllvm/lib/Target/Hexagon/HexagonISelLowering.cpp
The file was modifiedllvm/lib/Target/XCore/XCoreISelLowering.cpp
The file was modifiedllvm/include/llvm/CodeGen/TargetLowering.h
The file was modifiedllvm/lib/CodeGen/MIRParser/MIRParser.cpp
The file was modifiedllvm/lib/CodeGen/MIRPrinter.cpp
Commit 988f1e3e32a95df46da4f98b5652b0dc8b444c7f by sven.vanhaastregt
[OpenCL] Add image type handling for builtins
Image types were previously available, but not working.  This patch adds
image type handling.
Rename the image type definitions in the .td file to make them
consistent with other type names.  Use abstract types to represent the
unqualified types.  Instantiate access-qualified image types at the
point of use using, e.g. `ImageType<Image2d, "RO">`.
Add/update TableGen definitions for the read_image/write_image builtin
functions.
Patch by Pierre Gondois and Sven van Haastregt.
Differential Revision: https://reviews.llvm.org/D63480
llvm-svn: 371046
The file was modifiedclang/test/SemaOpenCL/fdeclare-opencl-builtins.cl
The file was modifiedclang/utils/TableGen/ClangOpenCLBuiltinEmitter.cpp
The file was modifiedclang/lib/Sema/OpenCLBuiltins.td
Commit 67991a59cb5ebc846c480daeb469c00cd6117275 by llvm-dev
[X86] X86InstrInfo::optimizeCompareInstr - fix potential null
dereference.
Fixes clang static-analyzer warning.
Technically the MachineInstr *Sub might still be null if we're comparing
zero (IsCmpZero == true), although this probably won't happen as SrcReg2
is probably == 0.
llvm-svn: 371047
The file was modifiedllvm/lib/Target/X86/X86InstrInfo.cpp
Commit 821858780ec096d59e181757d57cdf17d150706a by paulsson
[SystemZ]  Recognize INLINEASM_BR in backend
Handle the remaining cases also by handling asm goto in
SystemZInstrInfo::getBranchInfo().
Review: Ulrich Weigand https://reviews.llvm.org/D67151
llvm-svn: 371048
The file was modifiedllvm/lib/Target/SystemZ/SystemZInstrInfo.h
The file was modifiedllvm/lib/Target/SystemZ/SystemZMachineScheduler.cpp
The file was modifiedllvm/lib/Target/SystemZ/SystemZLongBranch.cpp
The file was modifiedllvm/test/CodeGen/SystemZ/asm-20.ll
The file was modifiedllvm/lib/Target/SystemZ/SystemZInstrInfo.cpp
Commit 082750fe6801a9b5ed299f54025ff9c0f0cdd92e by llvm-dev
[X86] X86SpeculativeLoadHardeningPass::canHardenRegister - fix out of
bounds warning.
Fixes clang static-analyzer warning.
llvm-svn: 371050
The file was modifiedllvm/lib/Target/X86/X86SpeculativeLoadHardening.cpp
Commit 071287c5a9320b4bf7892094b619152df424aa1f by llvm-dev
Revert rL370996 from llvm/trunk: [AArch64][GlobalISel] Teach
AArch64CallLowering to handle basic sibling calls
This adds support for basic sibling call lowering in AArch64. The intent
here is to only handle tail calls which do not change the ABI (hence,
sibling calls.)
At this point, it is very restricted. It does not handle
- Vararg calls.
- Calls with outgoing arguments.
- Calls whose calling conventions differ from the caller's calling
convention.
- Tail/sibling calls with BTI enabled.
This patch adds
- `AArch64CallLowering::isEligibleForTailCallOptimization`, which is
equivalent
  to the same function in AArch64ISelLowering.cpp (albeit with the
restrictions
  above.)
- `mayTailCallThisCC` and `canGuaranteeTCO`, which are identical to
those in
  AArch64ISelLowering.cpp.
- `getCallOpcode`, which is exactly what it sounds like.
Tail/sibling calls are lowered by checking if they pass
target-independent tail call positioning checks, and checking if they
satisfy
`isEligibleForTailCallOptimization`. If they do, then a tail call
instruction is emitted instead of a normal call. If we have a sibling
call (which is always the case in this patch), then we do not emit any
stack adjustment operations. When we go to lower a return, we check if
we've already emitted a tail call. If so, then we skip the return
lowering.
For testing, this patch
- Adds call-translator-tail-call.ll to test which tail calls we
currently lower,
which ones we don't, and which ones we shouldn't.
- Updates branch-target-enforcement-indirect-calls.ll to show that we
fall back
as expected.
Differential Revision: https://reviews.llvm.org/D67189
........ This fails on EXPENSIVE_CHECKS builds due to a
-verify-machineinstrs test failure in CodeGen/AArch64/dllimport.ll
llvm-svn: 371051
The file was modifiedllvm/include/llvm/CodeGen/GlobalISel/CallLowering.h
The file was modifiedllvm/lib/Target/AArch64/AArch64CallLowering.h
The file was modifiedllvm/test/CodeGen/AArch64/branch-target-enforcement-indirect-calls.ll
The file was removedllvm/test/CodeGen/AArch64/GlobalISel/call-translator-tail-call.ll
The file was modifiedllvm/test/CodeGen/AArch64/dllimport.ll
The file was modifiedllvm/lib/CodeGen/GlobalISel/CallLowering.cpp
The file was modifiedllvm/lib/Target/AArch64/AArch64CallLowering.cpp
Commit d2574d79b64db47051f0ea19de184218302e322a by petar.avramovic
[MIPS GlobalISel] Lower SRet pointer arguments
Instead of returning structure by value clang usually adds pointer to
that structure as an argument. Pointers don't require special handling
no matter the SRet flag. Remove unsuccessful exit from lowerCall for
arguments with SRet flag if they are pointers.
Differential Revision: https://reviews.llvm.org/D67179
llvm-svn: 371054
The file was addedllvm/test/CodeGen/Mips/GlobalISel/irtranslator/sret_pointer.ll
The file was modifiedllvm/lib/Target/Mips/MipsCallLowering.cpp
The file was addedllvm/test/CodeGen/Mips/GlobalISel/llvm-ir/sret_pointer.ll
Commit f5c7fe0795c8f2de8ee2c9fe6e8fbd89e1cf8bff by petar.avramovic
[MIPS GlobalISel] Select llvm.trap intrinsic
Select G_INTRINSIC_W_SIDE_EFFECTS for Intrinsic::trap for MIPS32 via
legalizeIntrinsic.
Differential Revision: https://reviews.llvm.org/D67180
llvm-svn: 371055
The file was modifiedllvm/lib/Target/Mips/MipsLegalizerInfo.cpp
The file was addedllvm/test/CodeGen/Mips/GlobalISel/llvm-ir/trap.ll
The file was addedllvm/test/CodeGen/Mips/GlobalISel/legalizer/trap.mir
Commit a4bfc8dfdaef430550b13041238a65e8613f2561 by petar.avramovic
[MIPS GlobalISel] Select G_FENCE
G_FENCE comes form fence instruction. For MIPS fence is generated in
AtomicExpandPass when atomic instruction gets surrounded with fence
instruction when needed. G_FENCE arguments don't have LLT, because of
that there is no job for legalizer and regbankselect. Instruction select
G_FENCE for MIPS32.
Differential Revision: https://reviews.llvm.org/D67181
llvm-svn: 371056
The file was addedllvm/test/CodeGen/Mips/GlobalISel/regbankselect/fence.mir
The file was addedllvm/test/CodeGen/Mips/GlobalISel/instruction-select/fence.mir
The file was addedllvm/test/CodeGen/Mips/GlobalISel/legalizer/fence.mir
The file was addedllvm/test/CodeGen/Mips/GlobalISel/llvm-ir/fence.ll
The file was modifiedllvm/lib/Target/Mips/MipsInstructionSelector.cpp
Commit 215910eeb2e13173b04bb8325cb20bf6fb011810 by llvm-dev
[X86][SSE] Add (failing) test case for PR43227
llvm-svn: 371061
The file was modifiedllvm/test/CodeGen/X86/load-partial.ll

Summary

  1. [lldb] Shuffle and time tests for the CMake builder (details)
Commit f5c60becdc3539473c1af9c0663b19402006802e by Jonas Devlieghere
[lldb] Shuffle and time tests for the CMake builder
- Pass the arguments to the right builder.
- Remove the unused arguments from the standalone builder.
llvm-svn: 370997
The file was modifiedzorg/jenkins/monorepo_build.py