[all-commits] [llvm/llvm-project] 590a3b: [CIR] Reposition entry-block allocas ahead of cont...

Steffen Larsen via All-commits all-commits at lists.llvm.org
Wed Sep 9 00:48:33 PDT 2026


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 590a3b87dba125069e962956d562802a8173dc38
      https://github.com/llvm/llvm-project/commit/590a3b87dba125069e962956d562802a8173dc38
  Author: Steffen Larsen <sholstla at amd.com>
  Date:   2026-09-09 (Wed, 09 Sep 2026)

  Changed paths:
    M clang/lib/CIR/Dialect/Transforms/HoistAllocas.cpp
    M clang/test/CIR/Transforms/hoist-allocas.cir

  Log Message:
  -----------
  [CIR] Reposition entry-block allocas ahead of control flow (#220496)

HoistAllocas returns early when an alloca was already in the entry
block, but being in the block is not the same as being ahead of the
control flow in it. The pass runs before FlattenCFG, which splits the
body at each structured control-flow op, so an alloca sitting after one
is left in a block that is no longer the entry block.

That matters because SROA only collects allocas from the entry block. An
alloca stranded behind a scope is invisible to it and never promoted, so
anything whose address it holds stays in memory.



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