AbortedChanges

Summary

  1. [AlwaysInliner] Update BFI when inlining (details)
  2. Revert "[AlwaysInliner] Update BFI when inlining" (details)
  3. [gn build] Don't define CINDEX_EXPORTS (details)
  4. Reland [AlwaysInliner] Update BFI when inlining (details)
  5. scudo: Simplify AtomicOptions::setFillContentsMode. NFCI. (details)
  6. [DAE] MarkLive in MarkValue(MaybeLive) if any use is live (details)
  7. [MemCpyOpt] Add tests from D40802 (NFC) (details)
  8. [libc++] NFCI: Remove _LIBCPP_EXTERN_TEMPLATE2 (details)
  9. Update legalizer-info-validation.mir test to test all opcodes. (details)
  10. [llc] Initialize TargetOptions after Triple is available (details)
  11. [docs] Update ControlFlowIntegrity.rst. (details)
  12. [libc++] NFCI: Simplify macro definitions for the debug mode (details)
  13. [libc++] NFCI: Remove the _LIBCPP_DEBUG_MODE helper macro (details)
  14. [MLIR][SPIRV] Add initial support for OpSpecConstantComposite. (details)
  15. Relax newly added opcode alias check to check only for a number instead of a specific opcode. (details)
  16. [MemCpyOpt] Avoid double invalidation (NFCI) (details)
  17. [MemCpyOpt] Add helper to erase instructions (NFC) (details)
  18. [lldb] Add a "design" section to the documentation. (details)
  19. [flang][NFC] Fix mis-matched struct/class declarations (details)
  20. Release the shadow memory used by the mmap range at munmap (details)
  21. [llvm-objcopy][NFC] refactor error handling. part 3. (details)
  22. [Hexagon] Move selection of HVX multiply from lowering to patterns (details)
  23. [libc++] Allow retries on some slightly flaky mutex tests (details)
  24. [Driver] Move detectLibcxxIncludePath to ToolChain (details)
  25. [clang-tidy] Implement readability-function-cognitive-complexity check (details)
  26. [clang] Implement objc_non_runtime_protocol to remove protocol metadata (details)
  27. [NFC][MSAN] Extract llvm.abs handling into a function (details)
  28. [libc++] Fix the build with GCC < 10 (details)
  29. [HIP] Align device binary (details)
  30. Don't reject calls to MinGW's unusual _setjmp declaration. (details)
  31. [test][Coro][NewPM] Fix coro-elide.ll under NPM (details)
  32. [MetaRenamer][NewPM] Port metarenamer to NPM (details)
Commit b1bf24667fc3ec5dc4b541148d0d722ffa28a6df by aeubanks
[AlwaysInliner] Update BFI when inlining

Reviewed By: davidxl

Differential Revision: https://reviews.llvm.org/D88324
The file was addedllvm/test/Transforms/Inline/prof-update-sample-alwaysinline.ll
The file was modifiedllvm/lib/Transforms/IPO/AlwaysInliner.cpp
The file was modifiedllvm/test/Transforms/Inline/prof-update-sample.ll
Commit 9b8c0b8b465f439226b5d2bd8f71d55436801bd9 by aeubanks
Revert "[AlwaysInliner] Update BFI when inlining"

This reverts commit b1bf24667fc3ec5dc4b541148d0d722ffa28a6df.
The file was modifiedllvm/lib/Transforms/IPO/AlwaysInliner.cpp
The file was removedllvm/test/Transforms/Inline/prof-update-sample-alwaysinline.ll
The file was modifiedllvm/test/Transforms/Inline/prof-update-sample.ll
Commit 354ba1cb8006c9126851e1b006f799de52ecb7bc by aeubanks
[gn build] Don't define CINDEX_EXPORTS

This causes
../../clang/include\clang-c/Platform.h(23,11): warning: 'CINDEX_EXPORTS' macro redefined [-Wmacro-redefined]
  #define CINDEX_EXPORTS
The file was modifiedllvm/utils/gn/secondary/clang/tools/libclang/BUILD.gn
Commit eb55735073d53f7816b9a4080e6f54dfeda5ae50 by aeubanks
Reland [AlwaysInliner] Update BFI when inlining

Reviewed By: davidxl

Differential Revision: https://reviews.llvm.org/D88324
The file was modifiedclang/test/CodeGen/lto-newpm-pipeline.c
The file was addedllvm/test/Transforms/Inline/prof-update-sample-alwaysinline.ll
The file was modifiedllvm/test/Transforms/Inline/prof-update-sample.ll
The file was modifiedllvm/lib/Transforms/IPO/AlwaysInliner.cpp
Commit a8938f3da319f4cc17b80ebab582a6c77efa6705 by peter
scudo: Simplify AtomicOptions::setFillContentsMode. NFCI.

Differential Revision: https://reviews.llvm.org/D88747
The file was modifiedcompiler-rt/lib/scudo/standalone/options.h
Commit 7468afe9ca135228f4c5a48f1b061ca57786fad6 by aeubanks
[DAE] MarkLive in MarkValue(MaybeLive) if any use is live

While looping through all args or all return values, we may mark a use
of a later iteration as live. Previously when we got to that later value
it would ignore that and continue adding to Uses instead of marking it
live. For example, when looping through arg#0 and arg#1,
MarkValue(arg#0, Live) may cause some use of arg#1 to be live, but
MarkValue(arg#1, MaybeLive) will not notice that and continue adding
into Uses.

Now MarkValue(RA, MaybeLive) will MarkLive(RA) if any use is live.

Fixes PR47444.

Reviewed By: rnk

Differential Revision: https://reviews.llvm.org/D88529
The file was modifiedllvm/include/llvm/Transforms/IPO/DeadArgumentElimination.h
The file was modifiedllvm/lib/Transforms/IPO/DeadArgumentElimination.cpp
The file was addedllvm/test/Transforms/DeadArgElim/preserve-used-ret.ll
Commit 84feca6a84d90c5c0b8ecbcffc68e8e4b1285f32 by nikita.ppv
[MemCpyOpt] Add tests from D40802 (NFC)

Even though that patch didn't stick, we should retain the test
coverage.
The file was addedllvm/test/Transforms/MemCpyOpt/memcpy-invoke-memcpy.ll
The file was addedllvm/test/Transforms/MemCpyOpt/nonlocal-memcpy-memcpy.ll
The file was addedllvm/test/Transforms/MemCpyOpt/merge-into-memset.ll
The file was addedllvm/test/Transforms/MemCpyOpt/mixed-sizes.ll
Commit 1a92de0064bcf9ef605ca9456812adf411e9ee4e by Louis Dionne
[libc++] NFCI: Remove _LIBCPP_EXTERN_TEMPLATE2

This seems to have been added a long time ago as a temporary help
for debugging some <regex> issue, but it's really the same as
_LIBCPP_EXTERN_TEMPLATE.
The file was modifiedlibcxx/include/locale
The file was modifiedlibcxx/include/__config
The file was modifiedlibcxx/include/__locale
Commit 1e020b2a1783b5db54d124923b975626e51ebeb1 by Amara Emerson
Update legalizer-info-validation.mir test to test all opcodes.

The test doesn't fail if we add opcodes to the end of the opcodes definition
list, so we were missing some.
The file was modifiedllvm/test/CodeGen/AArch64/GlobalISel/legalizer-info-validation.mir
Commit 322519ee1276cd7cc5f32b3fe335d0b804c8b8c0 by i
[llc] Initialize TargetOptions after Triple is available

Some targets have different defaults. This patch defers initialization of `TargetOptions` so that a future patch can pass `TargetOptions` to `InitTargetOptionsFromCodeGenFlags`

Reviewed By: jasonliu

Differential Revision: https://reviews.llvm.org/D88748
The file was modifiedllvm/tools/llc/llc.cpp
Commit 66cf68ed46789217a8382bb419a0bda1c4e97650 by eugenis
[docs] Update ControlFlowIntegrity.rst.

Expand the list of targets that support cfi-icall.
Add ThinLTO everywhere LTO is mentioned. AFAIK all CFI features are
supported with ThinLTO.

Differential Revision: https://reviews.llvm.org/D87717
The file was modifiedclang/docs/ControlFlowIntegrity.rst
Commit 31e820378b8ae4d81e9d206a7dae64ccf4b4c97f by Louis Dionne
[libc++] NFCI: Simplify macro definitions for the debug mode

The debug mode always had three possibilities:
- _LIBCPP_DEBUG is undefined => no assertions
- _LIBCPP_DEBUG == 0         => some assertions
- _LIBCPP_DEBUG == 1         => some assertions + iterator checks

This was documented that way, however the code did not make this clear
at all. The discrepancy between _LIBCPP_DEBUG and _LIBCPP_DEBUG_LEVEL
was especially confusing. I reworked how the various macros are defined
without changing anything else to make the code clearer.
The file was modifiedlibcxx/include/__config
The file was modifiedlibcxx/include/list
The file was modifiedlibcxx/include/vector
The file was modifiedlibcxx/include/unordered_map
The file was modifiedlibcxx/include/locale
The file was modifiedlibcxx/include/string
The file was modifiedlibcxx/include/iterator
The file was modifiedlibcxx/include/unordered_set
The file was modifiedlibcxx/include/__debug
The file was modifiedlibcxx/include/__hash_table
Commit 870827f65222ebb1a9701d4d0e916f315dc692a8 by Louis Dionne
[libc++] NFCI: Remove the _LIBCPP_DEBUG_MODE helper macro

It was used inconsistently and the name was pretty confusing, so we might
as well use `#if _LIBCPP_DEBUG_LEVEL == 2` consistently everywhere.
The file was modifiedlibcxx/include/__hash_table
The file was modifiedlibcxx/include/__debug
Commit 0c8f9b8099fd0500cd885bc699924e20371014ff by antiagainst
[MLIR][SPIRV] Add initial support for OpSpecConstantComposite.

This commit adds support to SPIR-V's composite specialization constants.
These are specialization constants which are composed of other spec
constants (whehter scalar or composite), regular constatns, or undef
values.

This commit adds support for parsing, printing, verification, and
(De)serialization.

A few TODOs are still in order:
- Supporting more types of constituents; currently, only scalar spec constatns are supported.
- Extending `spv._reference_of` to support composite spec constatns.

Reviewed By: antiagainst

Differential Revision: https://reviews.llvm.org/D88568
The file was modifiedmlir/include/mlir/Dialect/SPIRV/SPIRVStructureOps.td
The file was modifiedmlir/test/Dialect/SPIRV/Serialization/spec-constant.mlir
The file was modifiedmlir/lib/Dialect/SPIRV/SPIRVOps.cpp
The file was modifiedmlir/lib/Dialect/SPIRV/Serialization/Serializer.cpp
The file was modifiedmlir/test/Dialect/SPIRV/structure-ops.mlir
The file was modifiedmlir/lib/Dialect/SPIRV/Serialization/Deserializer.cpp
Commit 24f406e6d39bfd43eb1ce7fbee525256fa8adc4c by douglas.yung
Relax newly added opcode alias check to check only for a number instead of a specific opcode.
The file was modifiedllvm/test/CodeGen/AArch64/GlobalISel/legalizer-info-validation.mir
Commit 87b63c1726e24214272cd6c04825c585635d1cdc by nikita.ppv
[MemCpyOpt] Avoid double invalidation (NFCI)

The removal of the cpy instruction is left to the caller of
performCallSlotOptzn(), including the invalidation of MD. Both
call-sites already do this.

Also handle incrementation of NumMemCpyInstr consistently at the
call-site. One of the call-site was already doing this, which
ended up incrementing the statistic twice.

This fix was part of D26739.
The file was modifiedllvm/lib/Transforms/Scalar/MemCpyOptimizer.cpp
Commit 94704ed008f78e71aa42a452d8b03c122e0f78cd by nikita.ppv
[MemCpyOpt] Add helper to erase instructions (NFC)

Next to erasing the instruction, we also always want to remove
it from MSSA and MD. Use a common function to do so.

This is a refactoring split out from D26739.
The file was modifiedllvm/lib/Transforms/Scalar/MemCpyOptimizer.cpp
The file was modifiedllvm/include/llvm/Transforms/Scalar/MemCpyOptimizer.h
Commit 128e999d63c41e54d5d73c8af47e1ce401e6a200 by Jonas Devlieghere
[lldb] Add a "design" section to the documentation.

Create a "Design" section for the LLDB documentation. The goal is to
have design documents that describe how the LLDB internals work.

Currently similar pages  are mixed together under the "Development". The
existing pages describing the architecture, the reproducers, the
structured data plugins, and the SB API could be housed here. I hope
we'd see more pages being added here in the future.

Differential revision: https://reviews.llvm.org/D88516
The file was addedlldb/docs/design/reproducers.rst
The file was removedlldb/docs/resources/structureddataplugins.md
The file was modifiedlldb/docs/.htaccess
The file was addedlldb/docs/design/overview.rst
The file was addedlldb/docs/design/structureddataplugins.md
The file was removedlldb/docs/resources/architecture.rst
The file was removedlldb/docs/resources/sbapi.rst
The file was addedlldb/docs/design/sbapi.rst
The file was removedlldb/docs/resources/reproducers.rst
The file was modifiedlldb/docs/index.rst
Commit 11622d0fed8c1fb99124ebf4a6aece4bcc83b367 by tkeith
[flang][NFC] Fix mis-matched struct/class declarations

The template `ListDirectedStatementState` was declared as a struct and then as a class.
Fix it so they match.

Differential Revision: https://reviews.llvm.org/D88711
The file was modifiedflang/runtime/io-stmt.h
Commit 045a620c455d2f27a536d687ee6a0299b9e2c734 by jianzhouzh
Release the shadow memory used by the mmap range at munmap

When an application does a lot of pairs of mmap and munmap, if we did
not release shadoe memory used by mmap addresses, this would increase
memory usage.

Reviewed-by: morehouse

Differential Revision: https://reviews.llvm.org/D88686
The file was modifiedcompiler-rt/lib/dfsan/dfsan_interceptors.cpp
The file was addedcompiler-rt/test/dfsan/munmap_release_shadow.c
Commit 0373c768c56fc7ce6fe1efa48383f7b376e7bc2a by a.v.lapshin
[llvm-objcopy][NFC] refactor error handling. part 3.

Remove usages of special error reporting functions(error(),
reportError()). Errors are reported as Expected<>/Error returning
values. This part is for ELF subfolder of llvm-objcopy.

Testing: check-all.

Differential Revision: https://reviews.llvm.org/D87987
The file was modifiedllvm/tools/llvm-objcopy/COFF/COFFObjcopy.cpp
The file was modifiedllvm/tools/llvm-objcopy/MachO/Object.cpp
The file was removedllvm/tools/llvm-objcopy/llvm-objcopy.h
The file was modifiedllvm/tools/llvm-objcopy/ELF/ELFObjcopy.cpp
The file was modifiedllvm/tools/llvm-objcopy/ELF/Object.cpp
The file was modifiedllvm/tools/llvm-objcopy/llvm-objcopy.cpp
The file was modifiedllvm/tools/llvm-objcopy/ELF/Object.h
The file was modifiedllvm/tools/llvm-objcopy/wasm/WasmObjcopy.cpp
The file was modifiedllvm/tools/llvm-objcopy/MachO/MachOReader.cpp
Commit f528816d586a42e4cf27af5b2fa9ba91213307aa by kparzysz
[Hexagon] Move selection of HVX multiply from lowering to patterns

Also, change i32*i32 to V6_vmpyieoh + V6_vmpyiewuh_acc, which works
on V60 as well.
The file was modifiedllvm/test/CodeGen/Hexagon/autohvx/arith.ll
The file was modifiedllvm/lib/Target/Hexagon/HexagonPatternsHVX.td
The file was modifiedllvm/lib/Target/Hexagon/HexagonISelLoweringHVX.cpp
Commit f7e91e6cc7f35dd0dcc176463a355d78e1c020b1 by Louis Dionne
[libc++] Allow retries on some slightly flaky mutex tests
The file was modifiedlibcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.mutex.requirements.mutex/thread.mutex.recursive/lock.pass.cpp
The file was modifiedlibcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.cons/mutex_try_to_lock.pass.cpp
Commit a594fd28e373cb7cd348cf01f6a90e055bf6cf6d by phosek
[Driver] Move detectLibcxxIncludePath to ToolChain

This helper method is useful even outside of Gnu toolchains, so move
it to ToolChain so it can be reused in other toolchains such as Fuchsia.

Differential Revision: https://reviews.llvm.org/D88452
The file was modifiedclang/lib/Driver/ToolChains/Gnu.cpp
The file was modifiedclang/lib/Driver/ToolChains/Fuchsia.cpp
The file was modifiedclang/include/clang/Driver/ToolChain.h
The file was modifiedclang/lib/Driver/ToolChain.cpp
Commit ace644030e67506114d3ac9a221cf8eb5d10159c by lebedev.ri
[clang-tidy] Implement readability-function-cognitive-complexity check

Currently, there is basically just one clang-tidy check to impose
some sanity limits on functions - `clang-tidy-readability-function-size`.
It is nice, allows to limit line count, total number of statements,
number of branches, number of function parameters (not counting
implicit `this`), nesting level.

However, those are simple generic metrics. It is still trivially possible
to write a function, which does not violate any of these metrics,
yet is still rather unreadable.

Thus, some additional, slightly more complicated metric is needed.
There is a well-known [[ https://en.wikipedia.org/wiki/Cyclomatic_complexity | Cyclomatic complexity]], but certainly has its downsides.
And there is a [[ https://www.sonarsource.com/docs/CognitiveComplexity.pdf | COGNITIVE COMPLEXITY by SonarSource ]], which is available for opensource on https://sonarcloud.io/.

This check checks function Cognitive Complexity metric, and flags
the functions with Cognitive Complexity exceeding the configured limit.
The default limit is `25`, same as in 'upstream'.

The metric is implemented as per [[ https://www.sonarsource.com/docs/CognitiveComplexity.pdf | COGNITIVE COMPLEXITY by SonarSource ]] specification version 1.2 (19 April 2017), with two notable exceptions:
   * `preprocessor conditionals` (`#ifdef`, `#if`, `#elif`, `#else`,
     `#endif`) are not accounted for.
      Could be done. Currently, upstream does not account for them either.
   * `each method in a recursion cycle` is not accounted for.
      It can't be fully implemented, because cross-translational-unit
      analysis would be needed, which is not possible in clang-tidy.
      Thus, at least right now, i completely avoided implementing it.

There are some further possible improvements:
* Are GNU statement expressions (`BinaryConditionalOperator`) really free?
  They should probably cause nesting level increase,
  and complexity level increase when they are nested within eachother.
* Microsoft SEH support
* ???

Reviewed By: aaron.ballman, JonasToth, lattner

Differential Revision: https://reviews.llvm.org/D36836
The file was addedclang-tools-extra/test/clang-tidy/checkers/readability-function-cognitive-complexity.cpp
The file was addedclang-tools-extra/clang-tidy/readability/FunctionCognitiveComplexityCheck.h
The file was addedclang-tools-extra/clang-tidy/readability/FunctionCognitiveComplexityCheck.cpp
The file was modifiedclang-tools-extra/docs/clang-tidy/checks/list.rst
The file was modifiedclang-tools-extra/clang-tidy/readability/ReadabilityTidyModule.cpp
The file was modifiedclang-tools-extra/clang-tidy/readability/CMakeLists.txt
The file was addedclang-tools-extra/docs/clang-tidy/checks/readability-function-cognitive-complexity.rst
The file was modifiedclang-tools-extra/docs/ReleaseNotes.rst
Commit 14f6bfcb52e77867a6a84fcfd9e21bb5f1f5795c by nathan
[clang] Implement objc_non_runtime_protocol to remove protocol metadata

Summary:
Motivated by the new objc_direct attribute, this change adds a new
attribute that remotes metadata from Protocols that the programmer knows
isn't going to be used at runtime. We simply have the frontend skip
generating any protocol metadata entries (e.g. OBJC_CLASS_NAME,
_OBJC_$_PROTOCOL_INSTANCE_METHDOS, _OBJC_PROTOCOL, etc) for a protocol
marked with `__attribute__((objc_non_runtime_protocol))`.

There are a few APIs used to retrieve a protocol at runtime.
`@protocol(SomeProtocol)` will now error out of the requested protocol
is marked with attribute. `objc_getProtocol` will return `NULL` which
is consistent with the behavior of a non-existing protocol.

Subscribers: cfe-commits

Tags: #clang

Differential Revision: https://reviews.llvm.org/D75574
The file was modifiedclang/lib/CodeGen/CGObjC.cpp
The file was addedclang/test/CodeGenObjC/non-runtime-protocol.m
The file was modifiedclang/include/clang/AST/DeclObjC.h
The file was modifiedclang/test/Misc/pragma-attribute-supported-attributes-list.test
The file was modifiedclang/include/clang/Basic/DiagnosticSemaKinds.td
The file was modifiedclang/lib/Sema/SemaExprObjC.cpp
The file was modifiedclang/lib/CodeGen/CGObjCMac.cpp
The file was modifiedclang/lib/CodeGen/CGObjCGNU.cpp
The file was modifiedclang/lib/Sema/SemaDeclAttr.cpp
The file was modifiedclang/include/clang/Basic/AttrDocs.td
The file was modifiedclang/lib/AST/DeclObjC.cpp
The file was modifiedclang/lib/CodeGen/CGObjCRuntime.h
The file was modifiedclang/include/clang/Basic/Attr.td
Commit aff896dea13fed04d79bbd1ce20d5e49fec720bc by Vitaly Buka
[NFC][MSAN] Extract llvm.abs handling into a function

Reviewed By: eugenis

Differential Revision: https://reviews.llvm.org/D88519
The file was modifiedllvm/lib/Transforms/Instrumentation/MemorySanitizer.cpp
Commit 04fce1515b7ae2fcf7986d8578c18cfd559c68b2 by Louis Dionne
[libc++] Fix the build with GCC < 10

For now, we still need to support older GCCs, so work around the lack of
__is_constructible on older GCCs.
The file was modifiedlibcxx/include/type_traits
The file was modifiedlibcxx/test/std/utilities/meta/meta.unary/meta.unary.prop/is_constructible.pass.cpp
Commit dc6a0b0ec7e3d72a4cc849af4e4aa6c6a29a53d2 by Yaxun.Liu
[HIP] Align device binary

To facilitate faster loading of device binaries and share them among processes,
HIP runtime favors their alignment being 4096 bytes. HIP runtime can load
unaligned device binaries, however, aligning them at 4096 bytes results in
faster loading and less shared memory usage.

This patch adds an option -bundle-align to clang-offload-bundler which allows
bundles to be aligned at specified alignment. By default it is 1, which is NFC
compared to existing format.

This patch then aligns embedded fat binary and device binary inside fat binary
at 4096 bytes.

It has been verified this change does not cause significant overall file size increase
for typical HIP applications (less than 1%).

Differential Revision: https://reviews.llvm.org/D88734
The file was modifiedclang/test/Driver/hip-toolchain-no-rdc.hip
The file was modifiedclang/lib/CodeGen/CGCUDANV.cpp
The file was modifiedclang/tools/clang-offload-bundler/ClangOffloadBundler.cpp
The file was modifiedclang/test/Driver/clang-offload-bundler.c
The file was modifiedclang/test/Driver/hip-toolchain-rdc.hip
The file was modifiedclang/lib/Driver/ToolChains/HIP.cpp
The file was modifiedclang/test/CodeGenCUDA/device-stub.cu
Commit 8fb2a235b0f22dedba72b8b559ba33171a8dcd09 by richard
Don't reject calls to MinGW's unusual _setjmp declaration.

We now recognize this function as a builtin despite it having an
unexpected number of parameters; make sure we don't enforce that it has
only 1 argument for its 2 parameters.
The file was modifiedclang/include/clang/Basic/Builtins.def
The file was modifiedclang/test/Sema/builtin-setjmp.c
The file was modifiedclang/lib/Sema/SemaChecking.cpp
The file was modifiedclang/lib/CodeGen/CGBuiltin.cpp
Commit b113fa451061244e68af13328df9df46619bd0c3 by aeubanks
[test][Coro][NewPM] Fix coro-elide.ll under NPM
The file was modifiedllvm/test/Transforms/Coroutines/coro-elide.ll
Commit 321986fe68298ded3259bd1ffefe8cbdd60dbf18 by aeubanks
[MetaRenamer][NewPM] Port metarenamer to NPM

Reviewed By: asbirlea

Differential Revision: https://reviews.llvm.org/D88690
The file was modifiedllvm/lib/Passes/PassRegistry.def
The file was modifiedllvm/lib/Transforms/Utils/MetaRenamer.cpp
The file was modifiedllvm/test/Transforms/MetaRenamer/main.ll
The file was modifiedllvm/test/Transforms/MetaRenamer/metarenamer.ll
The file was addedllvm/include/llvm/Transforms/Utils/MetaRenamer.h
The file was modifiedllvm/lib/Passes/PassBuilder.cpp