Changes

Summary

  1. [mlir][docs] Fix name of get arith->LLVM patterns in docs (details)
  2. Reland [clang] Pass -clear-ast-before-backend in Clang::ConstructJob() (details)
  3. [Sanitizers] Replaced getMaxPointerSizeInBits with getPointerSizeInBits, which was causing failures for 32bit x86. (details)
  4. Use llvm::erase_if (NFC) (details)
  5. [OpenMP] libomp: add check of task function pointer for NULL. (details)
  6. BPF: remove intrindics @llvm.stacksave() and @llvm.stackrestore() (details)
  7. [gn build] Port 009f3a89d833 (details)
  8. [RISCV] Rewrite forwardCopyWillClobberTuple to not assume that there are exactly 32 registers. NFC (details)
  9. [mlir] Flipping Test dialect to prefixed form _Both (details)
  10. [LoopUtils] Simplify addRuntimeCheck to return a single value. (details)
  11. [JITLink][NFC] Fix Wdangling-else warning in LinkGraphTests (details)
  12. [AIX] Disable tests failing due to lack of 64-bit XCOFF object file support (details)
  13. Fix a comment in SemaSYCL to make sure I can commit (details)
  14. BPF: fix a bug in IRPeephole pass (details)
  15. [LV] Update test that was missed in e844f05397b72. (details)
  16. [AArch64][GlobalISel] combine and + [la]sr => ubfx (details)
  17. [NFC][BPF] fix comments and rename functions related to BTF_KIND_DECL_TAG (details)
  18. [mlir] SPIR-V: add sin, cos, log, sqrt OCL ops (details)
  19. [runtimes] Use the new "runtimes" build by default and deprecate other builds (details)
  20. [mlir] Update approximation range for Tanh operation (details)
  21. Add tests for the other variants of BreakpointCreateBySourceRegex. (details)
  22. [libc++][NFC] Reorganize release notes (details)
  23. Fix crash when diagnosing a CTAD failure in an array new expression (details)
  24. [libcxx] Make allocator<T>:allocate throw bad_array_new_length (details)
  25. Fix Linux error in TestBreakInLoadedDylib.py. (details)
  26. [MLIR] Expose optional attribute parsing functions (details)
  27. [Support][ThinLTO] Move ThinLTO caching to LLVM Support library (details)
  28. [gn build] Port 92b8cc52bbc8 (details)
  29. Revert "[Support][ThinLTO] Move ThinLTO caching to LLVM Support library" (details)
  30. [gn build] Port 8e46e34d2435 (details)
Commit 4a5ff56b1492693317162a2db6b39ffbbb8a6f15 by jeffniu22
[mlir][docs] Fix name of get arith->LLVM patterns in docs
The file was modifiedmlir/docs/Tutorials/Toy/Ch-6.md
Commit 1fb24fe85a19ae71b00875ff6c96ef1831dcf7e3 by aeubanks
Reland [clang] Pass -clear-ast-before-backend in Clang::ConstructJob()

This clears the memory used for the Clang AST before we run LLVM passes.

https://llvm-compile-time-tracker.com/compare.php?from=d0a5f61c4f6fccec87fd5207e3fcd9502dd59854&to=b7437fee79e04464dd968e1a29185495f3590481&stat=max-rss
shows significant memory savings with no slowdown (in fact -O0 slightly speeds up).

For more background, see
https://lists.llvm.org/pipermail/cfe-dev/2021-September/068930.html.

Turn this off for the interpreter since it does codegen multiple times.

Relanding with fix for -print-stats: D111973

Differential Revision: https://reviews.llvm.org/D111270
The file was modifiedclang/lib/Driver/ToolChains/Clang.cpp
The file was modifiedclang/lib/Interpreter/Interpreter.cpp
Commit 62627c721732525a06da4292ca151e8e529911c6 by kstoimenov
[Sanitizers] Replaced getMaxPointerSizeInBits with getPointerSizeInBits, which was causing failures for 32bit x86.

Reviewed By: vitalybuka

Differential Revision: https://reviews.llvm.org/D111829
The file was addedllvm/test/Analysis/StackSafetyAnalysis/i386-bug-fix.ll
The file was modifiedllvm/lib/Analysis/StackSafetyAnalysis.cpp
Commit 8568ca789ec105ed96196d82c861116540433b89 by kazu
Use llvm::erase_if (NFC)
The file was modifiedlld/lib/Core/Resolver.cpp
The file was modifiedpolly/lib/Analysis/ScopInfo.cpp
The file was modifiedlldb/source/Breakpoint/BreakpointList.cpp
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPUReplaceLDSUseWithPointer.cpp
The file was modifiedllvm/lib/CodeGen/LiveInterval.cpp
The file was modifiedlld/COFF/Writer.cpp
The file was modifiedllvm/lib/Target/WebAssembly/WebAssemblyISelLowering.cpp
The file was modifiedllvm/include/llvm/Analysis/InlineOrder.h
Commit 63f8099e233c37bae1dcf2629ec62db8de6cc356 by Andrey.Churbanov
[OpenMP] libomp: add check of task function pointer for NULL.

This patch allows to simplify compiler implementation on "taskwait nowait"
construct. The "taskwait nowait" is semantically equivalent to the empty task.
Instead of creating an empty routine as a task entry, compiler can just send
NULL pointer to the runtime. Then the runtime will make all the work with
dependences and return because of the absent task routine.

Differential Revision: https://reviews.llvm.org/D112015
The file was addedopenmp/runtime/test/tasking/kmp_taskwait_nowait.c
The file was modifiedopenmp/runtime/src/kmp_tasking.cpp
Commit 009f3a89d833ad5446f9b12326b7a4f54c87c5f5 by yhs
BPF: remove intrindics @llvm.stacksave() and @llvm.stackrestore()

Paul Chaignon reported a bpf verifier failure ([1]) due to using
non-ABI register R11. For the test case, llvm11 is okay while
llvm12 and later generates verifier unfriendly code.

The failure is related to variable length array size.
The following mimics the variable length array definition
in the test case:

struct t { char a[20]; };
void foo(void *);
int test() {
   const int a = 8;
   char tmp[AA + sizeof(struct t) + a];
   foo(tmp);
   ...
}

Paul helped bisect that the following llvm commit is
responsible:

552c6c232872 ("PR44406: Follow behavior of array bound constant
              folding in more recent versions of GCC.")

Basically, before the above commit, clang frontend did constant
folding for array size "AA + sizeof(struct t) + a" to be 68,
so used alloca for stack allocation. After the above commit,
clang frontend didn't do constant folding for array size
any more, which results in a VLA and llvm.stacksave/llvm.stackrestore
is generated.

BPF architecture API does not support stack pointer (sp) register.
The LLVM internally used R11 to indicate sp register but it should
not be in the final code. Otherwise, kernel verifier will reject it.

The early patch ([2]) tried to fix the issue in clang frontend.
But the upstream discussion considered frontend fix is really a
hack and the backend should properly undo llvm.stacksave/llvm.stackrestore.
This patch implemented a bpf IR phase to remove these intrinsics
unconditionally. If eventually the alloca can be resolved with
constant size, r11 will not be generated. If alloca cannot be
resolved with constant size, SelectionDag will complain, the same
as without this patch.

[1] https://lore.kernel.org/bpf/20210809151202.GB1012999@Mem/
[2] https://reviews.llvm.org/D107882

Differential Revision: https://reviews.llvm.org/D111897
The file was addedllvm/test/CodeGen/BPF/vla.ll
The file was modifiedllvm/lib/Target/BPF/CMakeLists.txt
The file was modifiedllvm/lib/Target/BPF/BPFTargetMachine.cpp
The file was modifiedllvm/lib/Target/BPF/BPF.h
The file was addedllvm/lib/Target/BPF/BPFIRPeephole.cpp
Commit 239bdf461cae2c516849410c161066e556b1760e by llvmgnsyncbot
[gn build] Port 009f3a89d833
The file was modifiedllvm/utils/gn/secondary/llvm/lib/Target/BPF/BUILD.gn
Commit 84d9bc51a33bc4dfaab32473fe301170a984ca93 by craig.topper
[RISCV] Rewrite forwardCopyWillClobberTuple to not assume that there are exactly 32 registers. NFC

This function was copied from ARM where register pairs/triples/quads can wrap around the 32 encoding space. So register 31 can pair with register 0. This is not true for RISCV vectors. The spec specifically mentions the possibility of a future encoding that has more than 32 registers.

This patch removes the modulo from the code and directly checks that destination register is in the source register range and not the beginning of the range. Though I don't expect an identity copy will occur.

Reviewed By: frasercrmck

Differential Revision: https://reviews.llvm.org/D111467
The file was modifiedllvm/lib/Target/RISCV/RISCVInstrInfo.cpp
Commit 62bf850910e66cef223fb36c6cedb7a90f6aee3c by jpienaar
[mlir] Flipping Test dialect to prefixed form _Both

Starting with a mostly NFC change to be able to differentiate between
mechanical changes from ones that require more detailed review.

This will be used to flush out flow before flipping dialects used
outside local testing. As this dialect is not intended to be used
generally rather than in tests in core, I will not be following 2 week
staging approach here.
The file was modifiedmlir/test/lib/Dialect/Test/TestOps.td
The file was modifiedmlir/test/lib/Dialect/Test/TestDialect.cpp
Commit e844f05397b72cbfe20170c445a7dae875df2017 by flo
[LoopUtils] Simplify addRuntimeCheck to return a single value.

This simplifies the return value of addRuntimeCheck from a pair of
instructions to a single `Value *`.

The existing users of addRuntimeChecks were ignoring the first element
of the pair, hence there is not reason to track FirstInst and return
it.

Additionally all users of addRuntimeChecks use the second returned
`Instruction *` just as `Value *`, so there is no need to return an
`Instruction *`. Therefore there is no need to create a redundant
dummy `and X, true` instruction any longer.

Effectively this change should not impact the generated code because the
redundant AND will be folded by later optimizations. But it is easy to
avoid creating it in the first place and it allows more accurately
estimating the cost of the runtime checks.
The file was modifiedllvm/test/Transforms/LoopVectorize/pr47343-expander-lcssa-after-cfg-update.ll
The file was modifiedllvm/lib/Transforms/Utils/LoopUtils.cpp
The file was modifiedllvm/lib/Transforms/Utils/LoopVersioning.cpp
The file was modifiedllvm/test/Transforms/LoopVersioning/lcssa.ll
The file was modifiedllvm/include/llvm/Transforms/Utils/LoopUtils.h
The file was modifiedllvm/test/Transforms/LoopDistribute/basic-with-memchecks.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/skeleton-lcssa-crash.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/pr50686.ll
The file was modifiedllvm/lib/Transforms/Vectorize/LoopVectorize.cpp
The file was modifiedllvm/test/Transforms/LoopVectorize/multiple-strides-vectorization.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/X86/masked_load_store.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/X86/uniform_mem_op.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/runtime-check-small-clamped-bounds.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/no_outside_user.ll
The file was modifiedllvm/test/Transforms/LoopVersioning/basic.ll
Commit 51788a5aff870a8e87ce34ffa6cecb46ce68f72e by blangmuir
[JITLink][NFC] Fix Wdangling-else warning in LinkGraphTests

Fix a dangling else that gcc-11 warned about. The EXPECT_EQ macro
expands to an if-else, so the whole construction contains a hidden
hangling else.
The file was modifiedllvm/unittests/ExecutionEngine/JITLink/LinkGraphTests.cpp
Commit d24e721debb074c68795c2b019cb51da690ab5f8 by Jake.Egan
[AIX] Disable tests failing due to lack of 64-bit XCOFF object file support

The following tests are failing because 64-bit XCOFF object files are not currently supported on AIX. This patch disables these tests on AIX for now.

Reviewed By: shchenz

Differential Revision: https://reviews.llvm.org/D111887
The file was modifiedllvm/unittests/DebugInfo/DWARF/DWARFDebugInfoTest.cpp
The file was modifiedllvm/unittests/DebugInfo/DWARF/DWARFDebugLineTest.cpp
Commit 2e4e2004afc51303bbb8836e886363f2056d73eb by erich.keane
Fix a comment in SemaSYCL to make sure I can commit
The file was modifiedclang/lib/Sema/SemaSYCL.cpp
Commit e9e4fc0fd3e0780207c731a1f2b8f6aacd24e8f8 by yhs
BPF: fix a bug in IRPeephole pass

Commit 009f3a89d833 ("BPF: remove intrindics @llvm.stacksave()
and @llvm.stackrestore()") implemented IRPeephole pass to remove
llvm.stacksave()/stackrestore() instrinsics.
Buildbot reported a failure:
  UNREACHABLE executed at ../lib/IR/LegacyPassManager.cpp:1445!
which is:
  llvm_unreachable("Pass modifies its input and doesn't report it");

The code has changed but the implementation didn't return true
for changing. This patch fixed this problem.
The file was modifiedllvm/lib/Target/BPF/BPFIRPeephole.cpp
Commit 74c4d44d47b282769f6584153e9b433e8e5fa671 by flo
[LV] Update test that was missed in e844f05397b72.
The file was modifiedllvm/test/Transforms/LoopVectorize/RISCV/masked_gather_scatter.ll
Commit 1300677f976e9975c21fd7bc4aa4e38e1bffeb27 by Jon Roelofs
[AArch64][GlobalISel] combine and + [la]sr => ubfx

https://godbolt.org/z/h8ejrG4hb

rdar://83597585

Differential Revision: https://reviews.llvm.org/D111839
The file was modifiedllvm/include/llvm/Target/GlobalISel/Combine.td
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/lshr.ll
The file was modifiedllvm/lib/CodeGen/GlobalISel/CombinerHelper.cpp
The file was addedllvm/test/CodeGen/AArch64/GlobalISel/form-bitfield-extract-from-shr-and.mir
The file was modifiedllvm/test/CodeGen/AArch64/GlobalISel/merge-stores-truncating.ll
The file was modifiedllvm/include/llvm/CodeGen/GlobalISel/CombinerHelper.h
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/fshl.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/fshr.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.ubfe.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/bswap.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/cvt_f32_ubyte.ll
Commit f4a8526cc49f53f86e84b3d0113694c86adacaa8 by yhs
[NFC][BPF] fix comments and rename functions related to BTF_KIND_DECL_TAG

There are no functionality change.
Fix some comments and rename processAnnotations() to
processDeclAnnotations() to avoid confusion when later
BTF_KIND_TYPE_TAG is introduced (https://reviews.llvm.org/D111199).
The file was modifiedllvm/lib/Target/BPF/BTFDebug.h
The file was modifiedllvm/lib/Target/BPF/BTFDebug.cpp
The file was modifiedllvm/lib/Target/BPF/BTF.h
Commit 2ea5e7ba570a96df88516d749c8030013824e021 by ivan.butygin
[mlir] SPIR-V: add sin, cos, log, sqrt OCL ops

Differential Revision: https://reviews.llvm.org/D111884
The file was modifiedmlir/test/Target/SPIRV/ocl-ops.mlir
The file was modifiedmlir/include/mlir/Dialect/SPIRV/IR/SPIRVOCLOps.td
Commit 79175f336c1f026bb71e5294e5a98d9c22360a95 by Louis Dionne
[runtimes] Use the new "runtimes" build by default and deprecate other builds

This commit makes the new "runtimes" build (with <monorepo>/runtimes as
the root of the CMake invocation) the default way of building libc++.
The other supported way of building libc++ is the "bootstrapping" build,
where `<monorepo>/llvm` is used as the root of the CMake invocation.

All other ways of building libc++ are deprecated effective immediately.
There should be no use-case for building libc++ that isn't supported by
one of these two builds, and the two new builds work on all environments
and are lightweight. They will also make it possible to greatly simplify
the build infrastructure of the runtimes, which is currently way too
convoluted.

Differential Revision: https://reviews.llvm.org/D111356
The file was modifiedlibcxx/docs/BuildingLibcxx.rst
The file was modifiedlibcxx/utils/ci/buildkite-pipeline.yml
The file was modifiedlibcxx/docs/ReleaseNotes.rst
The file was modifiedruntimes/CMakeLists.txt
The file was modifiedlibcxx/utils/ci/run-buildbot
Commit bf32bb7e056c9174cf1cf1a4bf78a339494aed95 by ezhulenev
[mlir] Update approximation range for Tanh operation

Use wider range for approximating Tanh to match results computed in Eigen with AVX.

Reviewed By: cota

Differential Revision: https://reviews.llvm.org/D112011
The file was modifiedmlir/test/Dialect/Math/polynomial-approximation.mlir
The file was modifiedmlir/lib/Dialect/Math/Transforms/PolynomialApproximation.cpp
Commit 9a2e9c5db692a010dd87a36907ba9d86bc54ac53 by jingham
Add tests for the other variants of BreakpointCreateBySourceRegex.

I added some tests for the case where the breakpoints take immediately
to the extant test case, and made a new test case for when the source
regex breakpoint will be set in a dlopen-ed library.

I also noticed when doing this that "lldbutil.run_to_source_breakpoint
can't handle the case where the breakpoint will be in a dlopen-ed
library, since it requires the breakpoint to have at least 1 location
before run.  I fixed that by adding a parameter to say whether a
before run location is expected.

Differential Revision: https://reviews.llvm.org/D111920
The file was addedlldb/test/API/functionalities/breakpoint/break_in_loaded_dylib/Makefile
The file was modifiedlldb/test/API/functionalities/breakpoint/breakpoint_command/bktptcmd.py
The file was addedlldb/test/API/functionalities/breakpoint/break_in_loaded_dylib/TestBreakInLoadedDylib.py
The file was addedlldb/test/API/functionalities/breakpoint/break_in_loaded_dylib/b.cpp
The file was modifiedlldb/test/API/functionalities/breakpoint/breakpoint_command/TestBreakpointCommandsFromPython.py
The file was addedlldb/test/API/functionalities/breakpoint/break_in_loaded_dylib/main.cpp
The file was modifiedlldb/packages/Python/lldbsuite/test/lldbutil.py
Commit d0d9be337e17f694550eb923bd4e8c611864668b by Louis Dionne
[libc++][NFC] Reorganize release notes

Several entries were in the wrong place, such as API changes appearing
under "Build System Changes". This commit shuffles stuff so it sits under
the right section.
The file was modifiedlibcxx/docs/ReleaseNotes.rst
Commit 5b949a649aff0406a878e8eb8d7d5efba0a55e4a by aaron
Fix crash when diagnosing a CTAD failure in an array new expression

This appears to be a think-o where the developer was trying to check for a null
pointer but was actually checking (redundantly) whether the optional held a
valid value or not. We now properly check the pointer for null.

This fixes PR51547.
The file was addedclang/test/SemaCXX/new-delete-array.cpp
The file was modifiedclang/lib/Sema/SemaExprCXX.cpp
Commit be10b1f1cc5fc621c378da97810ffc13b2a9af71 by mikhail.maltsev
[libcxx] Make allocator<T>:allocate throw bad_array_new_length

Currently the member functions std::allocator<T>::allocate,
std::experimental::pmr::polymorphic_allocator::allocate and
std::resource_adaptor<T>::do_allocate throw an exception of type
std::length_error when the requested size exceeds the maximum size.

According to the C++ standard ([allocator.members]/4,
[mem.poly.allocator.mem]/1), std::allocator<T>::allocate and
std::pmr::polymorphic_allocator::allocate must throw a
std::bad_array_new_length exception in this case.

The patch fixes the issue with std::allocator<T>::allocate and changes
the type the exception thrown by
std::experimental::pmr::resource_adaptor<T>::do_allocate to
std::bad_array_new_length as well for consistency.

The patch resolves LWG 3237, LWG 3038 and LWG 3190.

Reviewed By: ldionne, #libc, Quuxplusone

Differential Revision: https://reviews.llvm.org/D110846
The file was modifiedlibcxx/include/__memory/allocator.h
The file was modifiedlibcxx/include/new
The file was modifiedlibcxx/test/std/experimental/memory/memory.polymorphic.allocator.class/memory.polymorphic.allocator.mem/allocate.pass.cpp
The file was modifiedlibcxx/docs/ReleaseNotes.rst
The file was modifiedlibcxx/docs/Status/Cxx20Issues.csv
The file was modifiedlibcxx/test/std/experimental/memory/memory.resource.adaptor/memory.resource.adaptor.mem/do_allocate_and_deallocate.pass.cpp
The file was modifiedlibcxx/include/experimental/memory_resource
The file was modifiedlibcxx/lib/abi/x86_64-unknown-linux-gnu.libcxxabi.v1.stable.exceptions.no_new_in_libcxx.abilist
The file was modifiedlibcxx/test/std/utilities/memory/default.allocator/allocator.members/allocate.size.pass.cpp
Commit 1ff367dbb02d90b3ef1c2de36b60b658aeeeac7e by jingham
Fix Linux error in TestBreakInLoadedDylib.py.

Adding the to be loaded dylib to the extra images causes the breakpoint
to be found in the image added to the target on Linux (though not on
Darwin).  So adjust the test for this difference.
The file was modifiedlldb/test/API/functionalities/breakpoint/break_in_loaded_dylib/TestBreakInLoadedDylib.py
Commit 44b22f6f40f15ff24545c5fb0d612b3d86591955 by youngar17
[MLIR] Expose optional attribute parsing functions

The functionality already exists in AsmParser to parse optional ArrayAttrs and
StringAttrs, but only if they are added to a NamedAttrList.  This moves the
code to parse an optional attribute and add it to an list into a common
template, and exposes the simpler functionality of just parsing the optional
attributes.

Reviewed By: rriddle

Differential Revision: https://reviews.llvm.org/D111918
The file was modifiedmlir/include/mlir/IR/OpImplementation.h
The file was modifiedmlir/lib/Parser/AsmParserImpl.h
Commit 92b8cc52bbc8194f2cd6a5f742b874969421afca by phosek
[Support][ThinLTO] Move ThinLTO caching to LLVM Support library

We would like to move ThinLTO’s battle-tested file caching mechanism to
the LLVM Support library so that we can use it elsewhere in LLVM.

Patch By: noajshu

Differential Revision: https://reviews.llvm.org/D111371
The file was addedllvm/lib/Support/Caching.cpp
The file was modifiedllvm/tools/llvm-lto2/llvm-lto2.cpp
The file was modifiedclang/lib/CodeGen/BackendUtil.cpp
The file was modifiedllvm/tools/gold/gold-plugin.cpp
The file was modifiedlld/COFF/LTO.cpp
The file was addedllvm/include/llvm/Support/Caching.h
The file was removedllvm/lib/LTO/Caching.cpp
The file was modifiedlld/wasm/LTO.cpp
The file was modifiedllvm/include/llvm/LTO/LTO.h
The file was modifiedlld/ELF/LTO.cpp
The file was modifiedllvm/lib/LTO/CMakeLists.txt
The file was modifiedllvm/include/llvm/LTO/legacy/LTOCodeGenerator.h
The file was removedllvm/include/llvm/LTO/Caching.h
The file was modifiedllvm/tools/llvm-lto/llvm-lto.cpp
The file was modifiedlld/MachO/LTO.cpp
The file was modifiedllvm/lib/Support/CMakeLists.txt
The file was modifiedllvm/lib/LTO/LTOCodeGenerator.cpp
Commit 25107cc8b1f77cddd5eaddddcbe27ad387abd9d8 by llvmgnsyncbot
[gn build] Port 92b8cc52bbc8
The file was modifiedllvm/utils/gn/secondary/llvm/lib/LTO/BUILD.gn
The file was modifiedllvm/utils/gn/secondary/llvm/lib/Support/BUILD.gn
Commit 8e46e34d243524b9a1f9487718ea60e990b35fa3 by phosek
Revert "[Support][ThinLTO] Move ThinLTO caching to LLVM Support library"

This reverts commit 92b8cc52bbc8194f2cd6a5f742b874969421afca since
it broke the gold plugin.
The file was addedllvm/lib/LTO/Caching.cpp
The file was modifiedllvm/include/llvm/LTO/LTO.h
The file was modifiedllvm/tools/gold/gold-plugin.cpp
The file was modifiedllvm/tools/llvm-lto/llvm-lto.cpp
The file was modifiedllvm/tools/llvm-lto2/llvm-lto2.cpp
The file was modifiedclang/lib/CodeGen/BackendUtil.cpp
The file was modifiedllvm/lib/Support/CMakeLists.txt
The file was modifiedlld/wasm/LTO.cpp
The file was addedllvm/include/llvm/LTO/Caching.h
The file was removedllvm/include/llvm/Support/Caching.h
The file was modifiedllvm/include/llvm/LTO/legacy/LTOCodeGenerator.h
The file was modifiedlld/ELF/LTO.cpp
The file was modifiedlld/MachO/LTO.cpp
The file was modifiedlld/COFF/LTO.cpp
The file was modifiedllvm/lib/LTO/CMakeLists.txt
The file was modifiedllvm/lib/LTO/LTOCodeGenerator.cpp
The file was removedllvm/lib/Support/Caching.cpp
Commit ff6fe9a2f1612a47f37d98808316c8079a74f884 by llvmgnsyncbot
[gn build] Port 8e46e34d2435
The file was modifiedllvm/utils/gn/secondary/llvm/lib/LTO/BUILD.gn
The file was modifiedllvm/utils/gn/secondary/llvm/lib/Support/BUILD.gn