FailedChanges

Summary

  1. [mlir] Fix masked vector transfer ops with broadcasts (details)
  2. [mlir] Allow empty position in vector.insert and vector.extract (details)
  3. [mlir] Unrolled progressive-vector-to-scf. (details)
  4. [mlir] Support memref layout maps in vector transfer ops (details)
  5. [clang-repl] Land initial infrastructure for incremental parsing (details)
  6. [SLP][Test] Fix and precommit tests for D98714 (details)
  7. [SLP][Test] Fix and precommit tests for D98714 (details)
  8. [SLP] Add insertelement instructions to vectorizable tree (details)
  9. [Coroutines] Enable printing coroutine frame when dbg info is available (details)
  10. Revert "[clang-repl] Land initial infrastructure for incremental parsing" (details)
  11. [mlir][tosa] Fix tosa.cast semantics to perform rounding/clipping (details)
  12. [Coroutines] Salvege Debug.values (details)
  13. Add some warnings when debugserver is running in translation (details)
  14. [JITLink] Add a transferDefinedSymbol operation. (details)
  15. [JITLink] Expose x86-64 pointer jump stub block construction. (details)
  16. [GC][NFC] Move GCStrategy from CodeGen to IR (details)
  17. [gn build] Port d8b37de8a478 (details)
Commit c52cbe63e42fff8c1a95921effd35d7bb59301d3 by springerm
[mlir] Fix masked vector transfer ops with broadcasts

Broadcast dimensions of a vector transfer op have no corresponding dimension in the mask vector. E.g., a 2-D TransferReadOp, where one dimension is a broadcast, can have a 1-D `mask` attribute.

This commit also adds a few additional transfer op integration tests for various combinations of broadcasts, masking, dim transposes, etc.

Differential Revision: https://reviews.llvm.org/D101745
The file was modifiedmlir/test/Integration/Dialect/Vector/CPU/test-transfer-read-3d.mlir
The file was modifiedmlir/include/mlir/Interfaces/VectorInterfaces.h
The file was modifiedmlir/test/Dialect/Vector/ops.mlir
The file was modifiedmlir/test/Integration/Dialect/Vector/CPU/test-transfer-read-2d.mlir
The file was modifiedmlir/lib/Interfaces/VectorInterfaces.cpp
The file was modifiedmlir/lib/Conversion/VectorToSCF/ProgressiveVectorToSCF.cpp
The file was modifiedmlir/test/Dialect/Vector/invalid.mlir
The file was modifiedmlir/test/Integration/Dialect/Vector/CPU/test-transfer-read-1d.mlir
The file was modifiedmlir/include/mlir/Interfaces/VectorInterfaces.td
The file was modifiedmlir/lib/Dialect/Vector/VectorOps.cpp
Commit 864adf399e58a6bfd823136fc2cbcfe9dff5b4a8 by springerm
[mlir] Allow empty position in vector.insert and vector.extract

Such ops are no-ops and are folded to their respective `source`/`vector` operand.

Differential Revision: https://reviews.llvm.org/D101879
The file was modifiedmlir/lib/Dialect/Vector/VectorOps.cpp
The file was modifiedmlir/lib/Conversion/VectorToLLVM/ConvertVectorToLLVM.cpp
The file was modifiedmlir/test/Dialect/Vector/ops.mlir
The file was modifiedmlir/test/Dialect/Vector/invalid.mlir
The file was modifiedmlir/include/mlir/Dialect/Vector/VectorOps.td
Commit 9b77be5583d2da03f2ccd7319d33a2daedf8b1b3 by springerm
[mlir] Unrolled progressive-vector-to-scf.

Instead of an SCF for loop, these pattern generate fully unrolled loops with no temporary buffer allocations.

Differential Revision: https://reviews.llvm.org/D101981
The file was modifiedmlir/test/Integration/Dialect/Vector/CPU/test-transfer-read-2d.mlir
The file was modifiedmlir/lib/Interfaces/VectorInterfaces.cpp
The file was modifiedmlir/lib/Conversion/VectorToSCF/ProgressiveVectorToSCF.cpp
The file was modifiedmlir/test/lib/Transforms/TestVectorTransforms.cpp
The file was modifiedmlir/include/mlir/Conversion/VectorToSCF/ProgressiveVectorToSCF.h
The file was modifiedmlir/test/Integration/Dialect/Vector/CPU/test-transfer-read-3d.mlir
The file was modifiedmlir/test/Integration/Dialect/Vector/CPU/test-transfer-read-1d.mlir
The file was addedmlir/test/Conversion/VectorToSCF/unrolled-vector-to-loops.mlir
Commit 2a51e9ff2e06d5d7096f826014916b4cc02269fc by springerm
[mlir] Support memref layout maps in vector transfer ops

Differential Revision: https://reviews.llvm.org/D102042
The file was modifiedmlir/lib/Conversion/VectorToSCF/ProgressiveVectorToSCF.cpp
Commit 44a4000181e1a25027e87f2ae4e71cb876a7a275 by v.g.vassilev
[clang-repl] Land initial infrastructure for incremental parsing

In http://lists.llvm.org/pipermail/llvm-dev/2020-July/143257.html we have
mentioned our plans to make some of the incremental compilation facilities
available in llvm mainline.

This patch proposes a minimal version of a repl, clang-repl, which enables
interpreter-like interaction for C++. For instance:

./bin/clang-repl
clang-repl> int i = 42;
clang-repl> extern "C" int printf(const char*,...);
clang-repl> auto r1 = printf("i=%d\n", i);
i=42
clang-repl> quit

The patch allows very limited functionality, for example, it crashes on invalid
C++. The design of the proposed patch follows closely the design of cling. The
idea is to gather feedback and gradually evolve both clang-repl and cling to
what the community agrees upon.

The IncrementalParser class is responsible for driving the clang parser and
codegen and allows the compiler infrastructure to process more than one input.
Every input adds to the “ever-growing” translation unit. That model is enabled
by an IncrementalAction which prevents teardown when HandleTranslationUnit.

The IncrementalExecutor class hides some of the underlying implementation
details of the concrete JIT infrastructure. It exposes the minimal set of
functionality required by our incremental compiler/interpreter.

The Transaction class keeps track of the AST and the LLVM IR for each
incremental input. That tracking information will be later used to implement
error recovery.

The Interpreter class orchestrates the IncrementalParser and the
IncrementalExecutor to model interpreter-like behavior. It provides the public
API which can be used (in future) when using the interpreter library.

Differential revision: https://reviews.llvm.org/D96033
The file was modifiedclang/unittests/CodeGen/CMakeLists.txt
The file was modifiedclang/test/lit.cfg.py
The file was addedclang/unittests/Interpreter/IncrementalProcessingTest.cpp
The file was addedclang/include/clang/Interpreter/Transaction.h
The file was modifiedclang/tools/CMakeLists.txt
The file was modifiedclang/include/clang/Frontend/FrontendAction.h
The file was addedclang/lib/Interpreter/Interpreter.cpp
The file was modifiedclang/lib/CMakeLists.txt
The file was addedclang/unittests/Interpreter/InterpreterTest.cpp
The file was modifiedclang/test/CMakeLists.txt
The file was modifiedclang/include/clang/CodeGen/CodeGenAction.h
The file was modifiedclang/lib/Frontend/FrontendAction.cpp
The file was addedclang/test/Interpreter/execute.cpp
The file was addedclang/lib/Interpreter/IncrementalParser.h
The file was modifiedclang/lib/CodeGen/CodeGenAction.cpp
The file was addedclang/include/clang/Interpreter/Interpreter.h
The file was modifiedclang/unittests/CMakeLists.txt
The file was addedclang/lib/Interpreter/IncrementalParser.cpp
The file was addedclang/tools/clang-repl/ClangRepl.cpp
The file was addedclang/lib/Interpreter/IncrementalExecutor.h
The file was removedclang/unittests/CodeGen/IncrementalProcessingTest.cpp
The file was addedclang/tools/clang-repl/CMakeLists.txt
The file was addedclang/lib/Interpreter/IncrementalExecutor.cpp
The file was addedclang/test/Interpreter/sanity.c
The file was addedclang/unittests/Interpreter/CMakeLists.txt
The file was addedclang/lib/Interpreter/CMakeLists.txt
Commit 00a0595b253f22f5138eb0ceaf892dbe8e670453 by anton.a.afanasyev
[SLP][Test] Fix and precommit tests for D98714
The file was modifiedllvm/test/Transforms/SLPVectorizer/AMDGPU/bswap.ll
The file was modifiedllvm/test/Transforms/SLPVectorizer/AMDGPU/round.ll
The file was modifiedllvm/test/Transforms/SLPVectorizer/AMDGPU/bswap-inseltpoison.ll
The file was modifiedllvm/test/Transforms/SLPVectorizer/AMDGPU/round-inseltpoison.ll
Commit cd9090031c83ee857f82c3344b6efd97185c928e by anton.a.afanasyev
[SLP][Test] Fix and precommit tests for D98714
The file was modifiedllvm/test/Transforms/SLPVectorizer/X86/pr47629-inseltpoison.ll
The file was modifiedllvm/test/Transforms/SLPVectorizer/X86/pr47629.ll
Commit ab2c499d3a2ed3d3e13d96e456c57fb35a114b31 by anton.a.afanasyev
[SLP] Add insertelement instructions to vectorizable tree

Add new type of tree node for `InsertElementInst` chain forming vector.
These instructions could be either removed, or replaced by shuffles during
vectorization and we can add this node to cost model, so naturally estimating
their cost, getting rid of `CompensateCost` tricks and reducing further work
for InstCombine. This fixes PR40522 and PR35732 in a natural way. Also this
patch is the first step towards revectorization of partially vectorization
(to fix PR42022 completely). After adding inserts to tree the next step is
to add vector instructions there (for instance, to merge `store <2 x float>`
and `store <2 x float>` to `store <4 x float>`).

Fixes PR40522 and PR35732.

Differential Revision: https://reviews.llvm.org/D98714
The file was modifiedllvm/test/Transforms/SLPVectorizer/X86/hsub-inseltpoison.ll
The file was modifiedllvm/test/Transforms/SLPVectorizer/AArch64/insertelement-inseltpoison.ll
The file was modifiedllvm/test/Transforms/SLPVectorizer/X86/hadd.ll
The file was modifiedllvm/test/Transforms/SLPVectorizer/X86/sign-extend-inseltpoison.ll
The file was modifiedllvm/test/Transforms/SLPVectorizer/AMDGPU/add_sub_sat-inseltpoison.ll
The file was modifiedllvm/test/Transforms/SLPVectorizer/X86/pr44067.ll
The file was modifiedllvm/test/Transforms/SLPVectorizer/X86/pr44067-inseltpoison.ll
The file was modifiedllvm/test/Transforms/SLPVectorizer/X86/sext.ll
The file was modifiedllvm/test/Transforms/SLPVectorizer/vectorizable-functions-inseltpoison.ll
The file was modifiedllvm/test/Transforms/SLPVectorizer/AArch64/insertelement.ll
The file was modifiedllvm/test/Transforms/SLPVectorizer/X86/insert-element-build-vector.ll
The file was modifiedllvm/test/Transforms/SLPVectorizer/X86/long_chains.ll
The file was modifiedllvm/test/Transforms/SLPVectorizer/X86/hsub.ll
The file was modifiedllvm/test/Transforms/SLPVectorizer/X86/sitofp.ll
The file was modifiedllvm/test/Transforms/SLPVectorizer/AArch64/transpose-inseltpoison.ll
The file was modifiedllvm/test/Transforms/SLPVectorizer/X86/sitofp-inseltpoison.ll
The file was modifiedllvm/test/Transforms/SLPVectorizer/X86/zext.ll
The file was modifiedllvm/test/Transforms/SLPVectorizer/X86/alternate-cast.ll
The file was modifiedllvm/test/Transforms/SLPVectorizer/X86/pr47629-inseltpoison.ll
The file was modifiedllvm/test/Transforms/SLPVectorizer/AArch64/accelerate-vector-functions-inseltpoison.ll
The file was modifiedllvm/test/Transforms/SLPVectorizer/X86/pr31599.ll
The file was modifiedllvm/test/Transforms/SLPVectorizer/X86/resched.ll
The file was modifiedllvm/test/Transforms/SLPVectorizer/X86/arith-fp-inseltpoison.ll
The file was modifiedllvm/test/Transforms/SLPVectorizer/X86/PR35865-inseltpoison.ll
The file was modifiedllvm/test/Transforms/SLPVectorizer/AArch64/accelerate-vector-functions.ll
The file was modifiedllvm/test/Transforms/SLPVectorizer/ARM/extract-insert-inseltpoison.ll
The file was modifiedllvm/test/Transforms/SLPVectorizer/X86/load-merge.ll
The file was modifiedllvm/test/Transforms/SLPVectorizer/ARM/extract-insert.ll
The file was modifiedllvm/test/Transforms/SLPVectorizer/AMDGPU/bswap-inseltpoison.ll
The file was modifiedllvm/test/Transforms/SLPVectorizer/X86/blending-shuffle.ll
The file was modifiedllvm/test/Transforms/SLPVectorizer/X86/hadd-inseltpoison.ll
The file was modifiedllvm/test/Transforms/SLPVectorizer/AMDGPU/bswap.ll
The file was modifiedllvm/test/Transforms/SLPVectorizer/X86/load-merge-inseltpoison.ll
The file was modifiedllvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
The file was modifiedllvm/test/Transforms/SLPVectorizer/X86/blending-shuffle-inseltpoison.ll
The file was modifiedllvm/test/Transforms/SLPVectorizer/X86/value-bug.ll
The file was modifiedllvm/test/Transforms/SLPVectorizer/X86/pr47629.ll
The file was modifiedllvm/test/Transforms/SLPVectorizer/AArch64/gather-root.ll
The file was modifiedllvm/test/Transforms/SLPVectorizer/AMDGPU/round-inseltpoison.ll
The file was modifiedllvm/test/Transforms/SLPVectorizer/vectorizable-functions.ll
The file was modifiedllvm/test/Transforms/SLPVectorizer/X86/alternate-fp.ll
The file was modifiedllvm/test/Transforms/SLPVectorizer/X86/zext-inseltpoison.ll
The file was modifiedllvm/test/Transforms/SLPVectorizer/AMDGPU/round.ll
The file was modifiedllvm/test/Transforms/SLPVectorizer/X86/value-bug-inseltpoison.ll
The file was modifiedllvm/test/Transforms/SLPVectorizer/X86/pr40522.ll
The file was modifiedllvm/test/Transforms/SLPVectorizer/X86/operandorder.ll
The file was modifiedllvm/test/Transforms/SLPVectorizer/X86/alternate-int-inseltpoison.ll
The file was modifiedllvm/test/Transforms/SLPVectorizer/X86/alternate-cast-inseltpoison.ll
The file was modifiedllvm/test/Transforms/SLPVectorizer/X86/sext-inseltpoison.ll
The file was modifiedllvm/test/Transforms/SLPVectorizer/X86/sign-extend.ll
The file was modifiedllvm/test/Transforms/SLPVectorizer/AMDGPU/add_sub_sat.ll
The file was modifiedllvm/test/Transforms/SLPVectorizer/AMDGPU/crash_extract_subvector_cost.ll
The file was modifiedllvm/include/llvm/Transforms/Vectorize/SLPVectorizer.h
The file was modifiedllvm/test/Transforms/SLPVectorizer/X86/fptosi.ll
The file was modifiedllvm/test/Transforms/SLPVectorizer/X86/arith-fp.ll
The file was modifiedllvm/test/Transforms/SLPVectorizer/AArch64/transpose.ll
The file was modifiedllvm/test/Transforms/SLPVectorizer/X86/insert-element-build-vector-inseltpoison.ll
The file was modifiedllvm/test/Transforms/SLPVectorizer/AArch64/vectorize-free-extracts-inserts.ll
The file was modifiedllvm/test/Transforms/SLPVectorizer/X86/pr31599-inseltpoison.ll
The file was modifiedllvm/test/Transforms/SLPVectorizer/X86/phi.ll
The file was modifiedllvm/test/Transforms/SLPVectorizer/X86/external_user_jumbled_load-inseltpoison.ll
The file was modifiedllvm/test/Transforms/SLPVectorizer/X86/PR39774.ll
The file was modifiedllvm/test/Transforms/SLPVectorizer/X86/alternate-int.ll
The file was modifiedllvm/test/Transforms/SLPVectorizer/X86/alternate-fp-inseltpoison.ll
The file was modifiedllvm/test/Transforms/SLPVectorizer/X86/external_user_jumbled_load.ll
The file was modifiedllvm/test/Transforms/SLPVectorizer/X86/fptosi-inseltpoison.ll
The file was modifiedllvm/test/Transforms/SLPVectorizer/X86/PR35865.ll
Commit 6e5b8f489a27901de4b9dfa152da02dbca13ec31 by yedeng.yd
[Coroutines] Enable printing coroutine frame when dbg info is available

Summary: This patch tries to build debug info for coroutine frame in the
middle end. Although the coroutine frame is constructed and maintained by
the compiler and the programmer shouldn't care about the coroutine frame
by the design of C++20 coroutine,
a lot of programmers told me that they want to see the layout of the
coroutine frame strongly. Although C++ is designed as an abstract layer
so that the programmers shouldn't care about the actual memory in bits,
many experienced C++ programmers  are familiar with assembler and
debugger to see the memory layout in fact, After I was been told they
want to see the coroutine frame about 3 times, I think it is an actual
and desired demand.

However, the debug information is constructed in the front end and
coroutine frame is constructed in the middle end. This is a natural and
clear gap. So I could only try to construct the debug information in the
middle end after coroutine frame constructed. It is unusual, but we are
in consensus that the approch is the best one.

One hard part is we need construct the name for variables since there
isn't a map from llvm variables to DIVar. Then here is the strategy this
patch uses:
- The name `__resume_fn `, `__destroy_fn` and `__coro_index ` are
  constructed by the patch.
- Then the name `__promise` comes from the dbg.variable of corresponding
  dbg.declare of PromiseAlloca, which shows highest priority to
construct the debug information for the member of coroutine frame.
- Then if the member is struct, we would try to get the name of the llvm
  struct directly. Then replace ':' and '.' with '_' to make it
printable for debugger.
- If the member is a basic type like integer or double, we would try to
  emit the corresponding name.
- Then if the member is a Pointer Type, we would add `Ptr` after
  corresponding pointee type.
- Otherwise, we would name it with 'UnknownType'.

Reviewered by: lxfind, aprantl, rjmcall, dblaikie

Differential Revision: https://reviews.llvm.org/D99179
The file was addedllvm/test/Transforms/Coroutines/coro-debug-coro-frame.ll
The file was modifiedllvm/test/Transforms/Coroutines/coro-inline.ll
The file was modifiedllvm/lib/Transforms/Coroutines/CoroFrame.cpp
The file was modifiedllvm/lib/Transforms/Coroutines/CoroInternal.h
Commit f6907152db3d70606817ffe28274c6a90b331bbc by v.g.vassilev
Revert "[clang-repl] Land initial infrastructure for incremental parsing"

This reverts commit 44a4000181e1a25027e87f2ae4e71cb876a7a275.

We are seeing build failures due to missing dependency to libSupport and
CMake Error at tools/clang/tools/clang-repl/cmake_install.cmake
file INSTALL cannot find
The file was removedclang/lib/Interpreter/IncrementalExecutor.h
The file was removedclang/test/Interpreter/sanity.c
The file was removedclang/tools/clang-repl/ClangRepl.cpp
The file was removedclang/test/Interpreter/execute.cpp
The file was removedclang/lib/Interpreter/Interpreter.cpp
The file was removedclang/lib/Interpreter/CMakeLists.txt
The file was removedclang/lib/Interpreter/IncrementalExecutor.cpp
The file was removedclang/lib/Interpreter/IncrementalParser.h
The file was modifiedclang/tools/CMakeLists.txt
The file was modifiedclang/test/lit.cfg.py
The file was removedclang/tools/clang-repl/CMakeLists.txt
The file was modifiedclang/lib/Frontend/FrontendAction.cpp
The file was removedclang/unittests/Interpreter/IncrementalProcessingTest.cpp
The file was removedclang/lib/Interpreter/IncrementalParser.cpp
The file was modifiedclang/lib/CMakeLists.txt
The file was removedclang/include/clang/Interpreter/Transaction.h
The file was modifiedclang/include/clang/CodeGen/CodeGenAction.h
The file was addedclang/unittests/CodeGen/IncrementalProcessingTest.cpp
The file was removedclang/unittests/Interpreter/InterpreterTest.cpp
The file was modifiedclang/lib/CodeGen/CodeGenAction.cpp
The file was modifiedclang/test/CMakeLists.txt
The file was removedclang/unittests/Interpreter/CMakeLists.txt
The file was modifiedclang/include/clang/Frontend/FrontendAction.h
The file was modifiedclang/unittests/CMakeLists.txt
The file was removedclang/include/clang/Interpreter/Interpreter.h
The file was modifiedclang/unittests/CodeGen/CMakeLists.txt
Commit 3f8aafd7902722cc2039c7ef3d6747f8d49f81a6 by rob.suderman
[mlir][tosa] Fix tosa.cast semantics to perform rounding/clipping

Rounding to integers requires rounding (for floating points) and clipping
to the min/max values of the destination range. Added this behavior and
updated tests appropriately.

Reviewed By: sjarus, silvas

Differential Revision: https://reviews.llvm.org/D102375
The file was modifiedmlir/lib/Conversion/TosaToLinalg/TosaToLinalg.cpp
The file was modifiedmlir/test/Conversion/TosaToLinalg/tosa-to-linalg.mlir
Commit c1359ef07e8240b4350802b4998aedc1239a91d0 by yedeng.yd
[Coroutines] Salvege Debug.values

Summary: The previous implementation of coro-split didn't collect values
used by dbg instructions into the spills which made a log debug info
unavailable with optimization on.
This patch tries to collect these uses which are used by dbg.values. In
this way, the debugbility of coroutine could be as powerful as normal
functions with optimization on.

To avoid enlarging the coroutine frame, this patch only collects
`dbg.value` whose value is already in the coroutine frame. This decision
may make some debug info getting unavailable. But if we are with
optimization on, the performance issue should be considered first. And
this patch would make the debugbility of coroutine to be better only
without changing the layout of the frame.

Test-plan: check-llvm

Reviewed By: aprantl, lxfind

Differential Revision: https://reviews.llvm.org/D97673
The file was modifiedllvm/lib/Transforms/Coroutines/CoroFrame.cpp
The file was modifiedllvm/lib/Transforms/Coroutines/CoroSplit.cpp
The file was modifiedllvm/lib/Transforms/Coroutines/CoroInternal.h
The file was addedllvm/test/Transforms/Coroutines/coro-debug-dbg.values.ll
The file was addedllvm/test/Transforms/Coroutines/coro-debug-dbg.values-not_used_in_frame.ll
Commit 0c443e92d3b9bc5a25214f2c8418b72501a15a00 by Jason Molenda
Add some warnings when debugserver is running in translation

A debugserver launched x86_64 cannot control an arm64/arm64e
process on an Apple Silicon system.  Warn when this situation
has happened and return an error for the most common case of
attach.  I think there will be refinements to this in the
future, but start out by making it easy to spot the problem
when it happens.

rdar://76630595
The file was modifiedlldb/tools/debugserver/source/DNB.cpp
The file was modifiedlldb/tools/debugserver/source/debugserver.cpp
The file was modifiedlldb/tools/debugserver/source/RNBRemote.cpp
The file was modifiedlldb/tools/debugserver/source/DNB.h
Commit 4b0f5edd36c685333985698d1a288d2eb641b910 by Lang Hames
[JITLink] Add a transferDefinedSymbol operation.

The transferDefinedSymbol operation updates a Symbol's target block, offset,
and size. This can be convenient when you want to redefine the content of some
symbol(s) pointing at a block, while retaining the original block in the graph.
The file was modifiedllvm/unittests/ExecutionEngine/JITLink/LinkGraphTests.cpp
The file was modifiedllvm/include/llvm/ExecutionEngine/JITLink/JITLink.h
Commit 2f21a272af69321555cdc2794664b5eba8fc3276 by Lang Hames
[JITLink] Expose x86-64 pointer jump stub block construction.

This can be useful for clients who want to define their own symbol for the
stub, or re-use some existing symbol.
The file was modifiedllvm/include/llvm/ExecutionEngine/JITLink/x86_64.h
Commit d8b37de8a478c1b1532e45b0bfd82ecf1c964d9a by mkazantsev
[GC][NFC] Move GCStrategy from CodeGen to IR

We want it to be available in analyzes so that we could use the
CodeGen notion in middle-end passes (for example, to check if
a GC may free some particular pointer).

This is a preparatory patch that simply moves the files around.

Note: if this causes some build issues, this patch must just be reverted.

Differential Revision: https://reviews.llvm.org/D100557
Reviewed By: reames
The file was modifiedllvm/include/llvm/CodeGen/GCMetadata.h
The file was removedllvm/include/llvm/CodeGen/BuiltinGCs.h
The file was modifiedllvm/include/llvm/CodeGen/LinkAllCodegenComponents.h
The file was modifiedllvm/lib/CodeGen/AsmPrinter/OcamlGCPrinter.cpp
The file was modifiedllvm/include/llvm/CodeGen/LinkAllAsmWriterComponents.h
The file was modifiedllvm/lib/CodeGen/GCRootLowering.cpp
The file was removedllvm/include/llvm/CodeGen/GCStrategy.h
The file was addedllvm/lib/IR/GCStrategy.cpp
The file was modifiedllvm/lib/IR/CMakeLists.txt
The file was addedllvm/include/llvm/IR/GCStrategy.h
The file was modifiedllvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
The file was addedllvm/include/llvm/IR/BuiltinGCs.h
The file was removedllvm/lib/CodeGen/BuiltinGCs.cpp
The file was modifiedllvm/lib/CodeGen/GCMetadata.cpp
The file was modifiedllvm/lib/CodeGen/AsmPrinter/ErlangGCPrinter.cpp
The file was modifiedllvm/lib/CodeGen/SelectionDAG/StatepointLowering.cpp
The file was removedllvm/lib/CodeGen/GCStrategy.cpp
The file was addedllvm/lib/IR/BuiltinGCs.cpp
The file was modifiedllvm/lib/CodeGen/CMakeLists.txt
Commit 9bf17619750494ee971c66782039d4102d805c07 by llvmgnsyncbot
[gn build] Port d8b37de8a478
The file was modifiedllvm/utils/gn/secondary/llvm/lib/CodeGen/BUILD.gn
The file was modifiedllvm/utils/gn/secondary/llvm/lib/IR/BUILD.gn