[all-commits] [llvm/llvm-project] 41803a: [clang][bytecode] Replace MoveFn With DtorFn + mem...

Timm Baeder via All-commits all-commits at lists.llvm.org
Sat Aug 2 05:48:11 PDT 2025


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 41803a24140c3c53bbc82c7b61c7b196cf9d113a
      https://github.com/llvm/llvm-project/commit/41803a24140c3c53bbc82c7b61c7b196cf9d113a
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2025-08-02 (Sat, 02 Aug 2025)

  Changed paths:
    M clang/lib/AST/ByteCode/InterpState.cpp

  Log Message:
  -----------
  [clang][bytecode] Replace MoveFn With DtorFn + memcpy (#151717)

First, the old MoveFn was rather inefficient, since the dead data cannot
ever be accessed anyway.

Second, there was a problem where the only reason a block still had a
pointer to it (and thus was made into a DeadBlock instead of simply
being deallocated) as that a nested field in the block pointed to the
block itself.

Fix this by calling the dtor function unconditionally. If the block
*still* has pointers after that, we really need to create a DeadBlock
for it.



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