[all-commits] [llvm/llvm-project] eb2af3: [ComplexDeinterleaving] Use BumpPtrAllocator for C...

Benjamin Maxwell via All-commits all-commits at lists.llvm.org
Wed Aug 20 00:59:53 PDT 2025


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: eb2af3a5beaaa71a6088b8e0c940b209fdbea3c8
      https://github.com/llvm/llvm-project/commit/eb2af3a5beaaa71a6088b8e0c940b209fdbea3c8
  Author: Benjamin Maxwell <benjamin.maxwell at arm.com>
  Date:   2025-08-20 (Wed, 20 Aug 2025)

  Changed paths:
    M llvm/lib/CodeGen/ComplexDeinterleavingPass.cpp

  Log Message:
  -----------
  [ComplexDeinterleaving] Use BumpPtrAllocator for CompositeNodes (NFC) (#153217)

I was looking over this pass and noticed it was using shared pointers
for CompositeNodes. However, all nodes are owned by the deinterleaving
graph and are not released until the graph is destroyed. This means a
bump allocator and raw pointers can be used, which have a simpler
ownership model and less overhead than shared pointers.

The changes in this PR are to:
- Add a `SpecificBumpPtrAllocator<CompositeNode>` to the
`ComplexDeinterleavingGraph`
- This allocates new nodes and will deallocate them when the graph is
destroyed
  - Replace `NodePtr` and `RawNodePtr` with  `CompositeNode *`



To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications


More information about the All-commits mailing list